From e79c86c7b6113a2d0076c851cda62c4031bba206 Mon Sep 17 00:00:00 2001 From: jomjol <30766535+jomjol@users.noreply.github.com> Date: Fri, 14 Jan 2022 20:18:24 +0100 Subject: [PATCH 1/2] v10.2.0 --- README.md | 19 + code/components/esp32-camera-master.zip | Bin 0 -> 119039 bytes .../.github/workflows/build.yml | 81 + .../.github/workflows/stale.yml | 27 + .../components/esp32-camera-master/.gitignore | 4 + .../esp32-camera-master/CMakeLists.txt | 35 +- code/components/esp32-camera-master/Kconfig | 49 +- code/components/esp32-camera-master/README.md | 42 +- .../esp32-camera-master/component.mk | 4 +- .../conversions/esp_jpg_decode.c | 6 +- .../conversions/include/img_converters.h | 3 + .../esp32-camera-master/conversions/to_bmp.c | 69 +- .../conversions/to_jpg.cpp | 8 +- .../esp32-camera-master/driver/cam_hal.c | 483 +++++ .../esp32-camera-master/driver/camera.c | 1592 ----------------- .../esp32-camera-master/driver/esp_camera.c | 416 +++++ .../driver/include/esp_camera.h | 23 +- .../driver/include/sensor.h | 68 +- .../driver/private_include/cam_hal.h | 60 + .../driver/private_include/camera_common.h | 49 - .../driver/private_include/sccb.h | 1 + .../driver/private_include/xclk.h | 4 +- .../esp32-camera-master/driver/sccb.c | 35 +- .../esp32-camera-master/driver/sensor.c | 24 + .../examples/CMakeLists.txt | 9 + .../examples/main/CMakeLists.txt | 3 + .../examples/main/component.mk | 5 + .../examples/{ => main}/take_picture.c | 17 +- .../examples/sdkconfig.defaults | 17 + .../esp32-camera-master/idf_component.yml | 3 - .../esp32-camera-master/library.json | 1 + .../esp32-camera-master/sensors/gc0308.c | 465 +++++ .../esp32-camera-master/sensors/gc032a.c | 391 ++++ .../esp32-camera-master/sensors/gc2145.c | 475 +++++ .../esp32-camera-master/sensors/nt99141.c | 50 +- .../esp32-camera-master/sensors/ov2640.c | 58 +- .../esp32-camera-master/sensors/ov3660.c | 44 +- .../esp32-camera-master/sensors/ov5640.c | 33 +- .../esp32-camera-master/sensors/ov7670.c | 20 +- .../esp32-camera-master/sensors/ov7725.c | 24 +- .../sensors/private_include/gc0308.h | 31 + .../sensors/private_include/gc0308_regs.h | 25 + .../sensors/private_include/gc0308_settings.h | 245 +++ .../sensors/private_include/gc032a.h | 31 + .../sensors/private_include/gc032a_regs.h | 82 + .../sensors/private_include/gc032a_settings.h | 401 +++++ .../sensors/private_include/gc2145.h | 27 + .../sensors/private_include/gc2145_regs.h | 85 + .../sensors/private_include/gc2145_settings.h | 719 ++++++++ .../sensors/private_include/nt99141.h | 20 +- .../sensors/private_include/ov2640.h | 19 + .../sensors/private_include/ov2640_regs.h | 4 +- .../sensors/private_include/ov3660.h | 18 + .../sensors/private_include/ov5640.h | 18 + .../sensors/private_include/ov7670.h | 19 + .../sensors/private_include/ov7725.h | 19 + .../esp32-camera-master/target/esp32/ll_cam.c | 522 ++++++ .../target/esp32s2/ll_cam.c | 402 +++++ .../target/esp32s2/private_include/tjpgd.h | 99 + .../target/esp32s2/tjpgd.c | 970 ++++++++++ .../target/esp32s3/ll_cam.c | 452 +++++ .../target/private_include/ll_cam.h | 141 ++ .../{driver => target}/xclk.c | 17 +- .../esp32-camera-master/test/CMakeLists.txt | 4 + .../esp32-camera-master/test/component.mk | 8 + .../test/pictures/test_inside.jpeg | Bin 0 -> 18832 bytes .../test/pictures/test_outside.jpeg | Bin 0 -> 81744 bytes .../test/pictures/testimg.jpeg | Bin 0 -> 5764 bytes .../esp32-camera-master/test/test_camera.c | 500 ++++++ .../ClassControllCamera.cpp | 22 +- .../{sensor.h => sensor_old.h} | 0 .../components/jomjol_mqtt/interface_mqtt.cpp | 16 +- .../jomjol_tfliteclass/server_tflite.cpp | 2 +- code/components/jomjol_wlan/connect_wlan.cpp | 122 +- code/main/version.cpp | 8 +- code/main/version.h | 2 +- code/sdkconfig | 6 + code/sdkconfig.esp32cam | 6 + code/version.cpp | 8 +- firmware/bootloader.bin | Bin 25808 -> 25808 bytes firmware/firmware.bin | Bin 1704624 -> 1716960 bytes firmware/html.zip | Bin 179286 -> 179417 bytes sd-card/html/edit_config_param.html | 2 +- sd-card/html/gethost.js | 11 +- sd-card/html/readconfigparam.js | 9 + sd-card/html/version.txt | 2 +- 86 files changed, 8008 insertions(+), 1803 deletions(-) create mode 100644 code/components/esp32-camera-master.zip create mode 100644 code/components/esp32-camera-master/.github/workflows/build.yml create mode 100644 code/components/esp32-camera-master/.github/workflows/stale.yml create mode 100644 code/components/esp32-camera-master/driver/cam_hal.c delete mode 100644 code/components/esp32-camera-master/driver/camera.c create mode 100644 code/components/esp32-camera-master/driver/esp_camera.c create mode 100644 code/components/esp32-camera-master/driver/private_include/cam_hal.h delete mode 100644 code/components/esp32-camera-master/driver/private_include/camera_common.h create mode 100644 code/components/esp32-camera-master/examples/CMakeLists.txt create mode 100644 code/components/esp32-camera-master/examples/main/CMakeLists.txt create mode 100644 code/components/esp32-camera-master/examples/main/component.mk rename code/components/esp32-camera-master/examples/{ => main}/take_picture.c (89%) create mode 100644 code/components/esp32-camera-master/examples/sdkconfig.defaults delete mode 100644 code/components/esp32-camera-master/idf_component.yml create mode 100644 code/components/esp32-camera-master/sensors/gc0308.c create mode 100644 code/components/esp32-camera-master/sensors/gc032a.c create mode 100644 code/components/esp32-camera-master/sensors/gc2145.c create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc0308.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc0308_regs.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc0308_settings.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc032a.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc032a_regs.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc032a_settings.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc2145.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc2145_regs.h create mode 100644 code/components/esp32-camera-master/sensors/private_include/gc2145_settings.h create mode 100644 code/components/esp32-camera-master/target/esp32/ll_cam.c create mode 100644 code/components/esp32-camera-master/target/esp32s2/ll_cam.c create mode 100644 code/components/esp32-camera-master/target/esp32s2/private_include/tjpgd.h create mode 100644 code/components/esp32-camera-master/target/esp32s2/tjpgd.c create mode 100644 code/components/esp32-camera-master/target/esp32s3/ll_cam.c create mode 100644 code/components/esp32-camera-master/target/private_include/ll_cam.h rename code/components/esp32-camera-master/{driver => target}/xclk.c (81%) create mode 100644 code/components/esp32-camera-master/test/CMakeLists.txt create mode 100644 code/components/esp32-camera-master/test/component.mk create mode 100644 code/components/esp32-camera-master/test/pictures/test_inside.jpeg create mode 100644 code/components/esp32-camera-master/test/pictures/test_outside.jpeg create mode 100644 code/components/esp32-camera-master/test/pictures/testimg.jpeg create mode 100644 code/components/esp32-camera-master/test/test_camera.c rename code/components/jomjol_controlcamera/{sensor.h => sensor_old.h} (100%) diff --git a/README.md b/README.md index edcf0402..12f75f88 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,25 @@ In other cases you can contact the developer via email: jSsIBxI9F6R0X-v!< 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 R>9n0F|$ij{N+H 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⪼|t`r`qHX{y;vq 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 n)29u2dJOX?!(G;YVfg$?NVjL_` literal 0 HcmV?d00001 diff --git a/code/components/esp32-camera-master/.github/workflows/build.yml b/code/components/esp32-camera-master/.github/workflows/build.yml new file mode 100644 index 00000000..041ed2f2 --- /dev/null +++ b/code/components/esp32-camera-master/.github/workflows/build.yml @@ -0,0 +1,81 @@ +name: Build examples +on: + push: + branches: + - master + - bugfix/* + - feature/* + pull_request: + +jobs: + build-master: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: esp-idf build + uses: espressif/esp-idf-ci-action@latest + with: + path: 'examples' + + build-release-v4_0: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: esp-idf build + uses: espressif/esp-idf-ci-action@release-v4.0 + with: + path: 'examples' + + build-release-v4_1: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: esp-idf build + uses: espressif/esp-idf-ci-action@release-v4.1 + with: + path: 'examples' + + build-release-v4_2: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: esp-idf build + uses: espressif/esp-idf-ci-action@release-v4.2 + with: + path: 'examples' + + build-release-v4_3: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: esp-idf build + uses: espressif/esp-idf-ci-action@release-v4.3 + with: + path: 'examples' + + build-release-v3_3: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + with: + submodules: 'recursive' + - name: esp-idf build + uses: espressif/esp-idf-ci-action@release-v3.3 + with: + path: 'examples' diff --git a/code/components/esp32-camera-master/.github/workflows/stale.yml b/code/components/esp32-camera-master/.github/workflows/stale.yml new file mode 100644 index 00000000..a601f263 --- /dev/null +++ b/code/components/esp32-camera-master/.github/workflows/stale.yml @@ -0,0 +1,27 @@ +# This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time. +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/actions/stale +name: Mark stale issues and pull requests + +on: + schedule: + - cron: '20 9 * * *' + +jobs: + stale: + + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + + steps: + - uses: actions/stale@v3 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + stale-issue-message: 'This issue appears to be stale. Please close it if its no longer valid.' + stale-pr-message: 'This pull request appears to be stale. Please close it if its no longer valid.' + stale-issue-label: 'no-issue-activity' + stale-pr-label: 'no-pr-activity' diff --git a/code/components/esp32-camera-master/.gitignore b/code/components/esp32-camera-master/.gitignore index 5509140f..32125b79 100644 --- a/code/components/esp32-camera-master/.gitignore +++ b/code/components/esp32-camera-master/.gitignore @@ -1 +1,5 @@ *.DS_Store +.vscode +**/build +**/sdkconfig +**/sdkconfig.old \ No newline at end of file diff --git a/code/components/esp32-camera-master/CMakeLists.txt b/code/components/esp32-camera-master/CMakeLists.txt index 489aebac..5ceec97c 100644 --- a/code/components/esp32-camera-master/CMakeLists.txt +++ b/code/components/esp32-camera-master/CMakeLists.txt @@ -1,15 +1,18 @@ -if(IDF_TARGET STREQUAL "esp32") +if(IDF_TARGET STREQUAL "esp32" OR IDF_TARGET STREQUAL "esp32s2" OR IDF_TARGET STREQUAL "esp32s3") set(COMPONENT_SRCS - driver/camera.c + driver/esp_camera.c + driver/cam_hal.c driver/sccb.c driver/sensor.c - driver/xclk.c sensors/ov2640.c sensors/ov3660.c sensors/ov5640.c sensors/ov7725.c sensors/ov7670.c sensors/nt99141.c + sensors/gc0308.c + sensors/gc2145.c + sensors/gc032a.c conversions/yuv.c conversions/to_jpg.cpp conversions/to_bmp.c @@ -26,8 +29,34 @@ if(IDF_TARGET STREQUAL "esp32") driver/private_include sensors/private_include conversions/private_include + target/private_include ) + if(IDF_TARGET STREQUAL "esp32") + list(APPEND COMPONENT_SRCS + target/xclk.c + target/esp32/ll_cam.c + ) + endif() + + if(IDF_TARGET STREQUAL "esp32s2") + list(APPEND COMPONENT_SRCS + target/xclk.c + target/esp32s2/ll_cam.c + target/esp32s2/tjpgd.c + ) + + list(APPEND COMPONENT_PRIV_INCLUDEDIRS + target/esp32s2/private_include + ) + endif() + + if(IDF_TARGET STREQUAL "esp32s3") + list(APPEND COMPONENT_SRCS + target/esp32s3/ll_cam.c + ) + endif() + set(COMPONENT_REQUIRES driver) set(COMPONENT_PRIV_REQUIRES freertos nvs_flash) diff --git a/code/components/esp32-camera-master/Kconfig b/code/components/esp32-camera-master/Kconfig index 5af45694..6fb5aad2 100644 --- a/code/components/esp32-camera-master/Kconfig +++ b/code/components/esp32-camera-master/Kconfig @@ -5,11 +5,11 @@ menu "Camera configuration" default y help Enable this option if you want to use the OV7670. - Disable this option to safe memory. + Disable this option to save memory. config OV7725_SUPPORT - bool "Support OV7725 SVGA" - default n + bool "Support OV7725 VGA" + default y help Enable this option if you want to use the OV7725. Disable this option to save memory. @@ -42,6 +42,27 @@ menu "Camera configuration" Enable this option if you want to use the OV5640. Disable this option to save memory. + config GC2145_SUPPORT + bool "Support GC2145 2MP" + default y + help + Enable this option if you want to use the GC2145. + Disable this option to save memory. + + config GC032A_SUPPORT + bool "Support GC032A VGA" + default y + help + Enable this option if you want to use the GC032A. + Disable this option to save memory. + + config GC0308_SUPPORT + bool "Support GC0308 VGA" + default y + help + Enable this option if you want to use the GC0308. + Disable this option to save memory. + choice SCCB_HARDWARE_I2C_PORT bool "I2C peripheral to use for SCCB" default SCCB_HARDWARE_I2C_PORT1 @@ -53,6 +74,20 @@ menu "Camera configuration" endchoice + choice GC_SENSOR_WINDOW_MODE + bool "GalaxyCore Sensor Window Mode" + depends on (GC2145_SUPPORT || GC032A_SUPPORT || GC0308_SUPPORT) + default GC_SENSOR_SUBSAMPLE_MODE + help + This option determines how to reduce the output size when the resolution you set is less than the maximum resolution. + SUBSAMPLE_MODE has a bigger perspective and WINDOWING_MODE has a higher frame rate. + + config GC_SENSOR_WINDOWING_MODE + bool "Windowing Mode" + config GC_SENSOR_SUBSAMPLE_MODE + bool "Subsample Mode" + endchoice + choice CAMERA_TASK_PINNED_TO_CORE bool "Camera task pinned to core" default CAMERA_CORE0 @@ -68,4 +103,12 @@ menu "Camera configuration" endchoice + config CAMERA_DMA_BUFFER_SIZE_MAX + int "DMA buffer size" + range 8192 32768 + default 32768 + help + Maximum value of DMA buffer + Larger values may fail to allocate due to insufficient contiguous memory blocks, and smaller value may cause DMA interrupt to be too frequent + endmenu diff --git a/code/components/esp32-camera-master/README.md b/code/components/esp32-camera-master/README.md index 96616bca..e93d5cdb 100644 --- a/code/components/esp32-camera-master/README.md +++ b/code/components/esp32-camera-master/README.md @@ -1,8 +1,29 @@ # ESP32 Camera Driver +[![Build examples](https://github.com/espressif/esp32-camera/actions/workflows/build.yml/badge.svg)](https://github.com/espressif/esp32-camera/actions/workflows/build.yml) ## General Information -This repository hosts ESP32 compatible driver for OV2640, OV3660, OV5640, OV7670 and OV7725 image sensors. Additionally it provides a few tools, which allow converting the captured frame data to the more common BMP and JPEG formats. +This repository hosts ESP32 series Soc compatible driver for image sensors. Additionally it provides a few tools, which allow converting the captured frame data to the more common BMP and JPEG formats. + +### Supported Soc + +- ESP32 +- ESP32-S2 +- ESP32-S3 + +### Supported Sensor + +| model | max resolution | color type | output format | Len Size | +| ------- | -------------- | ---------- | ------------------------------------------------------------ | -------- | +| OV2640 | 1600 x 1200 | color | YUV(422/420)/YCbCr422
RGB565/555
8-bit compressed data
8/10-bit Raw RGB data | 1/4" | +| OV3660 | 2048 x 1536 | color | raw RGB data
RGB565/555/444
CCIR656
YCbCr422
compression | 1/5" | +| OV5640 | 2592 x 1944 | color | RAW RGB
RGB565/555/444
CCIR656
YUV422/420
YCbCr422
compression | 1/4" | +| OV7670 | 640 x 480 | color | Raw Bayer RGB
Processed Bayer RGB
YUV/YCbCr422
GRB422
RGB565/555 | 1/6" | +| OV7725 | 640 x 480 | color | Raw RGB
GRB 422
RGB565/555/444
YCbCr 422 | 1/4" | +| NT99141 | 1280 x 720 | color | YCbCr 422
RGB565/555/444
Raw
CCIR656
JPEG compression | 1/4" | +| GC032A | 640 x 480 | color | YUV/YCbCr422
RAW Bayer
RGB565 | 1/10" | +| GC0308 | 640 x 480 | color | YUV/YCbCr422
RAW Bayer
RGB565 | 1/6.5" | +| GC2145 | 1600 x 1200 | color | YUV/YCbCr422
RAW Bayer
RGB565 | 1/5" | ## Important to Remember @@ -17,7 +38,7 @@ This repository hosts ESP32 compatible driver for OV2640, OV3660, OV5640, OV7670 ### Using esp-idf - Clone or download and extract the repository to the components folder of your ESP-IDF project -- Enable PSRAM in `menuconfig` +- Enable PSRAM in `menuconfig` (also set Flash and PSRAM frequiencies to 80MHz) - Include `esp_camera.h` in your code ### Using PlatformIO @@ -75,17 +96,6 @@ However with a bit of patience and experimenting you'll figure the Kconfig out. If you miss-skip-ignore this critical step the camera module will compile but camera logic inside the library will be 'empty' because the Kconfig sets the proper #ifdef statements during the build process to initialize the selected cameras. It's very not optional! -### Kconfig options - -| config | description | default | -| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------ | -| CONFIG_OV2640_SUPPORT | Support for OV2640 camera | enabled | -| CONFIG_OV7725_SUPPORT | Support for OV7725 camera | disabled | -| CONFIG_OV3660_SUPPORT | Support for OV3660 camera | enabled | -| CONFIG_OV5640_SUPPORT | Support for OV5640 camera | enabled | -| CONFIG_SCCB_HARDWARE_I2C | Enable this option if you want to use hardware I2C to control the camera. Disable this option to use software I2C. | enabled | -| CONFIG_SCCB_HARDWARE_I2C_PORT | I2C peripheral to use for SCCB. Can be I2C0 and I2C1. | CONFIG_SCCB_HARDWARE_I2C_PORT1 | -| CONFIG_CAMERA_TASK_PINNED_TO_CORE | Pin the camera handle task to a certain core(0/1). It can also be done automatically choosing NO_AFFINITY. Can be CAMERA_CORE0, CAMERA_CORE1 or NO_AFFINITY. | CONFIG_CAMERA_CORE0 | ## Examples @@ -132,8 +142,7 @@ static camera_config_t camera_config = { .pin_href = CAM_PIN_HREF, .pin_pclk = CAM_PIN_PCLK, - //XCLK 20MHz or 10MHz for OV2640 double FPS (Experimental) - .xclk_freq_hz = 20000000, + .xclk_freq_hz = 20000000,//EXPERIMENTAL: Set to 16MHz on ESP32-S2 or ESP32-S3 to enable EDMA mode .ledc_timer = LEDC_TIMER_0, .ledc_channel = LEDC_CHANNEL_0, @@ -141,7 +150,8 @@ static camera_config_t camera_config = { .frame_size = FRAMESIZE_UXGA,//QQVGA-QXGA Do not use sizes above QVGA when not JPEG .jpeg_quality = 12, //0-63 lower number means higher quality - .fb_count = 1 //if more than one, i2s runs in continuous mode. Use only with JPEG + .fb_count = 1, //if more than one, i2s runs in continuous mode. Use only with JPEG + .grab_mode = CAMERA_GRAB_WHEN_EMPTY//CAMERA_GRAB_LATEST. Sets when buffers should be filled }; esp_err_t camera_init(){ diff --git a/code/components/esp32-camera-master/component.mk b/code/components/esp32-camera-master/component.mk index e4ffee18..8db15eb8 100644 --- a/code/components/esp32-camera-master/component.mk +++ b/code/components/esp32-camera-master/component.mk @@ -1,4 +1,4 @@ COMPONENT_ADD_INCLUDEDIRS := driver/include conversions/include -COMPONENT_PRIV_INCLUDEDIRS := driver/private_include conversions/private_include sensors/private_include -COMPONENT_SRCDIRS := driver conversions sensors +COMPONENT_PRIV_INCLUDEDIRS := driver/private_include conversions/private_include sensors/private_include target/private_include +COMPONENT_SRCDIRS := driver conversions sensors target target/esp32 CXXFLAGS += -fno-rtti diff --git a/code/components/esp32-camera-master/conversions/esp_jpg_decode.c b/code/components/esp32-camera-master/conversions/esp_jpg_decode.c index d42794fc..a9615e36 100644 --- a/code/components/esp32-camera-master/conversions/esp_jpg_decode.c +++ b/code/components/esp32-camera-master/conversions/esp_jpg_decode.c @@ -17,7 +17,11 @@ #if ESP_IDF_VERSION_MAJOR >= 4 // IDF 4+ #if CONFIG_IDF_TARGET_ESP32 // ESP32/PICO-D4 #include "esp32/rom/tjpgd.h" -#else +#elif CONFIG_IDF_TARGET_ESP32S2 +#include "tjpgd.h" +#elif CONFIG_IDF_TARGET_ESP32S3 +#include "esp32s3/rom/tjpgd.h" +#else #error Target CONFIG_IDF_TARGET is not supported #endif #else // ESP32 Before IDF 4.0 diff --git a/code/components/esp32-camera-master/conversions/include/img_converters.h b/code/components/esp32-camera-master/conversions/include/img_converters.h index 330f8db8..f736200a 100644 --- a/code/components/esp32-camera-master/conversions/include/img_converters.h +++ b/code/components/esp32-camera-master/conversions/include/img_converters.h @@ -22,6 +22,7 @@ extern "C" { #include #include #include "esp_camera.h" +#include "esp_jpg_decode.h" typedef size_t (* jpg_out_cb)(void * arg, size_t index, const void* data, size_t len); @@ -120,6 +121,8 @@ bool frame2bmp(camera_fb_t * fb, uint8_t ** out, size_t * out_len); */ bool fmt2rgb888(const uint8_t *src_buf, size_t src_len, pixformat_t format, uint8_t * rgb_buf); +bool jpg2rgb565(const uint8_t *src, size_t src_len, uint8_t * out, jpg_scale_t scale); + #ifdef __cplusplus } #endif diff --git a/code/components/esp32-camera-master/conversions/to_bmp.c b/code/components/esp32-camera-master/conversions/to_bmp.c index 3b5e2b70..5a54bdba 100644 --- a/code/components/esp32-camera-master/conversions/to_bmp.c +++ b/code/components/esp32-camera-master/conversions/to_bmp.c @@ -24,6 +24,10 @@ #if ESP_IDF_VERSION_MAJOR >= 4 // IDF 4+ #if CONFIG_IDF_TARGET_ESP32 // ESP32/PICO-D4 #include "esp32/spiram.h" +#elif CONFIG_IDF_TARGET_ESP32S2 +#include "esp32s2/spiram.h" +#elif CONFIG_IDF_TARGET_ESP32S3 +#include "esp32s3/spiram.h" #else #error Target CONFIG_IDF_TARGET is not supported #endif @@ -115,6 +119,54 @@ static bool _rgb_write(void * arg, uint16_t x, uint16_t y, uint16_t w, uint16_t return true; } +static bool _rgb565_write(void * arg, uint16_t x, uint16_t y, uint16_t w, uint16_t h, uint8_t *data) +{ + rgb_jpg_decoder * jpeg = (rgb_jpg_decoder *)arg; + if(!data){ + if(x == 0 && y == 0){ + //write start + jpeg->width = w; + jpeg->height = h; + //if output is null, this is BMP + if(!jpeg->output){ + jpeg->output = (uint8_t *)_malloc((w*h*3)+jpeg->data_offset); + if(!jpeg->output){ + return false; + } + } + } else { + //write end + } + return true; + } + + size_t jw = jpeg->width*3; + size_t jw2 = jpeg->width*2; + size_t t = y * jw; + size_t t2 = y * jw2; + size_t b = t + (h * jw); + size_t l = x * 2; + uint8_t *out = jpeg->output+jpeg->data_offset; + uint8_t *o = out; + size_t iy, iy2, ix, ix2; + + w = w * 3; + + for(iy=t, iy2=t2; iy> 3); + o[ix2+1] = c>>8; + o[ix2] = c&0xff; + } + data+=w; + } + return true; +} + //input buffer static uint32_t _jpg_read(void * arg, size_t index, uint8_t *buf, size_t len) { @@ -140,6 +192,21 @@ static bool jpg2rgb888(const uint8_t *src, size_t src_len, uint8_t * out, jpg_sc return true; } +bool jpg2rgb565(const uint8_t *src, size_t src_len, uint8_t * out, jpg_scale_t scale) +{ + rgb_jpg_decoder jpeg; + jpeg.width = 0; + jpeg.height = 0; + jpeg.input = src; + jpeg.output = out; + jpeg.data_offset = 0; + + if(esp_jpg_decode(src_len, scale, _jpg_read, _rgb565_write, (void*)&jpeg) != ESP_OK){ + return false; + } + return true; +} + bool jpg2bmp(const uint8_t *src, size_t src_len, uint8_t ** out, size_t * out_len) { @@ -317,7 +384,7 @@ bool fmt2bmp(uint8_t *src, size_t src_len, uint16_t width, uint16_t height, pixf } *out = out_buf; *out_len = out_size; - return true; + return true; } bool frame2bmp(camera_fb_t * fb, uint8_t ** out, size_t * out_len) diff --git a/code/components/esp32-camera-master/conversions/to_jpg.cpp b/code/components/esp32-camera-master/conversions/to_jpg.cpp index f8987a84..9b8905a7 100644 --- a/code/components/esp32-camera-master/conversions/to_jpg.cpp +++ b/code/components/esp32-camera-master/conversions/to_jpg.cpp @@ -25,6 +25,10 @@ #if ESP_IDF_VERSION_MAJOR >= 4 // IDF 4+ #if CONFIG_IDF_TARGET_ESP32 // ESP32/PICO-D4 #include "esp32/spiram.h" +#elif CONFIG_IDF_TARGET_ESP32S2 +#include "esp32s2/spiram.h" +#elif CONFIG_IDF_TARGET_ESP32S3 +#include "esp32s3/spiram.h" #else #error Target CONFIG_IDF_TARGET is not supported #endif @@ -195,7 +199,7 @@ public: return true; } if ((size_t)len > (max_len - index)) { - ESP_LOGW(TAG, "JPG output overflow: %d bytes", len - (max_len - index)); + //ESP_LOGW(TAG, "JPG output overflow: %d bytes (%d,%d,%d)", len - (max_len - index), len, index, max_len); len = max_len - index; } if (len) { @@ -215,7 +219,7 @@ bool fmt2jpg(uint8_t *src, size_t src_len, uint16_t width, uint16_t height, pixf { //todo: allocate proper buffer for holding JPEG data //this should be enough for CIF frame size - int jpg_buf_len = 64*1024; + int jpg_buf_len = 128*1024; uint8_t * jpg_buf = (uint8_t *)_malloc(jpg_buf_len); diff --git a/code/components/esp32-camera-master/driver/cam_hal.c b/code/components/esp32-camera-master/driver/cam_hal.c new file mode 100644 index 00000000..c54fb817 --- /dev/null +++ b/code/components/esp32-camera-master/driver/cam_hal.c @@ -0,0 +1,483 @@ +// Copyright 2010-2020 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include "esp_heap_caps.h" +#include "ll_cam.h" +#include "cam_hal.h" + +static const char *TAG = "cam_hal"; + +static cam_obj_t *cam_obj = NULL; + +static const uint32_t JPEG_SOI_MARKER = 0xFFD8FF; // written in little-endian for esp32 +static const uint16_t JPEG_EOI_MARKER = 0xD9FF; // written in little-endian for esp32 + +static int cam_verify_jpeg_soi(const uint8_t *inbuf, uint32_t length) +{ + uint32_t sig = *((uint32_t *)inbuf) & 0xFFFFFF; + if(sig != JPEG_SOI_MARKER) { + for (uint32_t i = 0; i < length; i++) { + sig = *((uint32_t *)(&inbuf[i])) & 0xFFFFFF; + if (sig == JPEG_SOI_MARKER) { + ESP_LOGW(TAG, "SOI: %d", i); + return i; + } + } + ESP_LOGW(TAG, "NO-SOI"); + return -1; + } + return 0; +} + +static int cam_verify_jpeg_eoi(const uint8_t *inbuf, uint32_t length) +{ + int offset = -1; + uint8_t *dptr = (uint8_t *)inbuf + length - 2; + while (dptr > inbuf) { + uint16_t sig = *((uint16_t *)dptr); + if (JPEG_EOI_MARKER == sig) { + offset = dptr - inbuf; + //ESP_LOGW(TAG, "EOI: %d", length - (offset + 2)); + return offset; + } + dptr--; + } + return -1; +} + +static bool cam_get_next_frame(int * frame_pos) +{ + if(!cam_obj->frames[*frame_pos].en){ + for (int x = 0; x < cam_obj->frame_cnt; x++) { + if (cam_obj->frames[x].en) { + *frame_pos = x; + return true; + } + } + } else { + return true; + } + return false; +} + +static bool cam_start_frame(int * frame_pos) +{ + if (cam_get_next_frame(frame_pos)) { + if(ll_cam_start(cam_obj, *frame_pos)){ + // Vsync the frame manually + ll_cam_do_vsync(cam_obj); + uint64_t us = (uint64_t)esp_timer_get_time(); + cam_obj->frames[*frame_pos].fb.timestamp.tv_sec = us / 1000000UL; + cam_obj->frames[*frame_pos].fb.timestamp.tv_usec = us % 1000000UL; + return true; + } + } + return false; +} + +void IRAM_ATTR ll_cam_send_event(cam_obj_t *cam, cam_event_t cam_event, BaseType_t * HPTaskAwoken) +{ + if (xQueueSendFromISR(cam->event_queue, (void *)&cam_event, HPTaskAwoken) != pdTRUE) { + ll_cam_stop(cam); + cam->state = CAM_STATE_IDLE; + ESP_EARLY_LOGE(TAG, "EV-%s-OVF", cam_event==CAM_IN_SUC_EOF_EVENT ? "EOF" : "VSYNC"); + } +} + +//Copy fram from DMA dma_buffer to fram dma_buffer +static void cam_task(void *arg) +{ + int cnt = 0; + int frame_pos = 0; + cam_obj->state = CAM_STATE_IDLE; + cam_event_t cam_event = 0; + + xQueueReset(cam_obj->event_queue); + + while (1) { + xQueueReceive(cam_obj->event_queue, (void *)&cam_event, portMAX_DELAY); + DBG_PIN_SET(1); + switch (cam_obj->state) { + + case CAM_STATE_IDLE: { + if (cam_event == CAM_VSYNC_EVENT) { + //DBG_PIN_SET(1); + if(cam_start_frame(&frame_pos)){ + cam_obj->frames[frame_pos].fb.len = 0; + cam_obj->state = CAM_STATE_READ_BUF; + } + cnt = 0; + } + } + break; + + case CAM_STATE_READ_BUF: { + camera_fb_t * frame_buffer_event = &cam_obj->frames[frame_pos].fb; + size_t pixels_per_dma = (cam_obj->dma_half_buffer_size * cam_obj->fb_bytes_per_pixel) / (cam_obj->dma_bytes_per_item * cam_obj->in_bytes_per_pixel); + + if (cam_event == CAM_IN_SUC_EOF_EVENT) { + if(!cam_obj->psram_mode){ + if (cam_obj->fb_size < (frame_buffer_event->len + pixels_per_dma)) { + ESP_LOGW(TAG, "FB-OVF"); + ll_cam_stop(cam_obj); + DBG_PIN_SET(0); + continue; + } + frame_buffer_event->len += ll_cam_memcpy(cam_obj, + &frame_buffer_event->buf[frame_buffer_event->len], + &cam_obj->dma_buffer[(cnt % cam_obj->dma_half_buffer_cnt) * cam_obj->dma_half_buffer_size], + cam_obj->dma_half_buffer_size); + } + //Check for JPEG SOI in the first buffer. stop if not found + if (cam_obj->jpeg_mode && cnt == 0 && cam_verify_jpeg_soi(frame_buffer_event->buf, frame_buffer_event->len) != 0) { + ll_cam_stop(cam_obj); + cam_obj->state = CAM_STATE_IDLE; + } + cnt++; + + } else if (cam_event == CAM_VSYNC_EVENT) { + //DBG_PIN_SET(1); + ll_cam_stop(cam_obj); + + if (cnt || !cam_obj->jpeg_mode || cam_obj->psram_mode) { + if (cam_obj->jpeg_mode) { + if (!cam_obj->psram_mode) { + if (cam_obj->fb_size < (frame_buffer_event->len + pixels_per_dma)) { + ESP_LOGW(TAG, "FB-OVF"); + cnt--; + } else { + frame_buffer_event->len += ll_cam_memcpy(cam_obj, + &frame_buffer_event->buf[frame_buffer_event->len], + &cam_obj->dma_buffer[(cnt % cam_obj->dma_half_buffer_cnt) * cam_obj->dma_half_buffer_size], + cam_obj->dma_half_buffer_size); + } + } + cnt++; + } + + cam_obj->frames[frame_pos].en = 0; + + if (cam_obj->psram_mode) { + if (cam_obj->jpeg_mode) { + frame_buffer_event->len = cnt * cam_obj->dma_half_buffer_size; + } else { + frame_buffer_event->len = cam_obj->recv_size; + } + } else if (!cam_obj->jpeg_mode) { + if (frame_buffer_event->len != cam_obj->fb_size) { + cam_obj->frames[frame_pos].en = 1; + ESP_LOGE(TAG, "FB-SIZE: %u != %u", frame_buffer_event->len, cam_obj->fb_size); + } + } + //send frame + if(!cam_obj->frames[frame_pos].en && xQueueSend(cam_obj->frame_buffer_queue, (void *)&frame_buffer_event, 0) != pdTRUE) { + //pop frame buffer from the queue + camera_fb_t * fb2 = NULL; + if(xQueueReceive(cam_obj->frame_buffer_queue, &fb2, 0) == pdTRUE) { + //push the new frame to the end of the queue + if (xQueueSend(cam_obj->frame_buffer_queue, (void *)&frame_buffer_event, 0) != pdTRUE) { + cam_obj->frames[frame_pos].en = 1; + ESP_LOGE(TAG, "FBQ-SND"); + } + //free the popped buffer + cam_give(fb2); + } else { + //queue is full and we could not pop a frame from it + cam_obj->frames[frame_pos].en = 1; + ESP_LOGE(TAG, "FBQ-RCV"); + } + } + } + + if(!cam_start_frame(&frame_pos)){ + cam_obj->state = CAM_STATE_IDLE; + } else { + cam_obj->frames[frame_pos].fb.len = 0; + } + cnt = 0; + } + } + break; + } + DBG_PIN_SET(0); + } +} + +static lldesc_t * allocate_dma_descriptors(uint32_t count, uint16_t size, uint8_t * buffer) +{ + lldesc_t *dma = (lldesc_t *)heap_caps_malloc(count * sizeof(lldesc_t), MALLOC_CAP_DMA); + if (dma == NULL) { + return dma; + } + + for (int x = 0; x < count; x++) { + dma[x].size = size; + dma[x].length = 0; + dma[x].sosf = 0; + dma[x].eof = 0; + dma[x].owner = 1; + dma[x].buf = (buffer + size * x); + dma[x].empty = (uint32_t)&dma[(x + 1) % count]; + } + return dma; +} + +static esp_err_t cam_dma_config(const camera_config_t *config) +{ + bool ret = ll_cam_dma_sizes(cam_obj); + if (0 == ret) { + return ESP_FAIL; + } + + cam_obj->dma_node_cnt = (cam_obj->dma_buffer_size) / cam_obj->dma_node_buffer_size; // Number of DMA nodes + cam_obj->frame_copy_cnt = cam_obj->recv_size / cam_obj->dma_half_buffer_size; // Number of interrupted copies, ping-pong copy + + ESP_LOGI(TAG, "buffer_size: %d, half_buffer_size: %d, node_buffer_size: %d, node_cnt: %d, total_cnt: %d", + cam_obj->dma_buffer_size, cam_obj->dma_half_buffer_size, cam_obj->dma_node_buffer_size, cam_obj->dma_node_cnt, cam_obj->frame_copy_cnt); + + cam_obj->dma_buffer = NULL; + cam_obj->dma = NULL; + + cam_obj->frames = (cam_frame_t *)heap_caps_calloc(1, cam_obj->frame_cnt * sizeof(cam_frame_t), MALLOC_CAP_DEFAULT); + CAM_CHECK(cam_obj->frames != NULL, "frames malloc failed", ESP_FAIL); + + uint8_t dma_align = 0; + size_t fb_size = cam_obj->fb_size; + if (cam_obj->psram_mode) { + dma_align = ll_cam_get_dma_align(cam_obj); + if (cam_obj->fb_size < cam_obj->recv_size) { + fb_size = cam_obj->recv_size; + } + } + + /* Allocate memeory for frame buffer */ + size_t alloc_size = fb_size * sizeof(uint8_t) + dma_align; + uint32_t _caps = MALLOC_CAP_8BIT; + if (CAMERA_FB_IN_DRAM == config->fb_location) { + _caps |= MALLOC_CAP_INTERNAL; + } else { + _caps |= MALLOC_CAP_SPIRAM; + } + for (int x = 0; x < cam_obj->frame_cnt; x++) { + cam_obj->frames[x].dma = NULL; + cam_obj->frames[x].fb_offset = 0; + cam_obj->frames[x].en = 0; + ESP_LOGI(TAG, "Allocating %d Byte frame buffer in %s", alloc_size, _caps & MALLOC_CAP_SPIRAM ? "PSRAM" : "OnBoard RAM"); + cam_obj->frames[x].fb.buf = (uint8_t *)heap_caps_malloc(alloc_size, _caps); + CAM_CHECK(cam_obj->frames[x].fb.buf != NULL, "frame buffer malloc failed", ESP_FAIL); + if (cam_obj->psram_mode) { + //align PSRAM buffer. TODO: save the offset so proper address can be freed later + cam_obj->frames[x].fb_offset = dma_align - ((uint32_t)cam_obj->frames[x].fb.buf & (dma_align - 1)); + cam_obj->frames[x].fb.buf += cam_obj->frames[x].fb_offset; + ESP_LOGI(TAG, "Frame[%d]: Offset: %u, Addr: 0x%08X", x, cam_obj->frames[x].fb_offset, (uint32_t)cam_obj->frames[x].fb.buf); + cam_obj->frames[x].dma = allocate_dma_descriptors(cam_obj->dma_node_cnt, cam_obj->dma_node_buffer_size, cam_obj->frames[x].fb.buf); + CAM_CHECK(cam_obj->frames[x].dma != NULL, "frame dma malloc failed", ESP_FAIL); + } + cam_obj->frames[x].en = 1; + } + + if (!cam_obj->psram_mode) { + cam_obj->dma_buffer = (uint8_t *)heap_caps_malloc(cam_obj->dma_buffer_size * sizeof(uint8_t), MALLOC_CAP_DMA); + if(NULL == cam_obj->dma_buffer) { + ESP_LOGE(TAG,"%s(%d): DMA buffer %d Byte malloc failed, the current largest free block:%d Byte", __FUNCTION__, __LINE__, + cam_obj->dma_buffer_size, heap_caps_get_largest_free_block(MALLOC_CAP_DMA)); + return ESP_FAIL; + } + + cam_obj->dma = allocate_dma_descriptors(cam_obj->dma_node_cnt, cam_obj->dma_node_buffer_size, cam_obj->dma_buffer); + CAM_CHECK(cam_obj->dma != NULL, "dma malloc failed", ESP_FAIL); + } + + return ESP_OK; +} + +esp_err_t cam_init(const camera_config_t *config) +{ + CAM_CHECK(NULL != config, "config pointer is invalid", ESP_ERR_INVALID_ARG); + + esp_err_t ret = ESP_OK; + cam_obj = (cam_obj_t *)heap_caps_calloc(1, sizeof(cam_obj_t), MALLOC_CAP_DMA); + CAM_CHECK(NULL != cam_obj, "lcd_cam object malloc error", ESP_ERR_NO_MEM); + + cam_obj->swap_data = 0; + cam_obj->vsync_pin = config->pin_vsync; + cam_obj->vsync_invert = true; + + ll_cam_set_pin(cam_obj, config); + ret = ll_cam_config(cam_obj, config); + CAM_CHECK_GOTO(ret == ESP_OK, "ll_cam initialize failed", err); + +#if CAMERA_DBG_PIN_ENABLE + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[DBG_PIN_NUM], PIN_FUNC_GPIO); + gpio_set_direction(DBG_PIN_NUM, GPIO_MODE_OUTPUT); + gpio_set_pull_mode(DBG_PIN_NUM, GPIO_FLOATING); +#endif + + ESP_LOGI(TAG, "cam init ok"); + return ESP_OK; + +err: + free(cam_obj); + cam_obj = NULL; + return ESP_FAIL; +} + +esp_err_t cam_config(const camera_config_t *config, framesize_t frame_size, uint16_t sensor_pid) +{ + CAM_CHECK(NULL != config, "config pointer is invalid", ESP_ERR_INVALID_ARG); + esp_err_t ret = ESP_OK; + + ret = ll_cam_set_sample_mode(cam_obj, (pixformat_t)config->pixel_format, config->xclk_freq_hz, sensor_pid); + + cam_obj->jpeg_mode = config->pixel_format == PIXFORMAT_JPEG; +#if CONFIG_IDF_TARGET_ESP32 + cam_obj->psram_mode = false; +#else + cam_obj->psram_mode = (config->xclk_freq_hz == 16000000); +#endif + cam_obj->frame_cnt = config->fb_count; + cam_obj->width = resolution[frame_size].width; + cam_obj->height = resolution[frame_size].height; + + if(cam_obj->jpeg_mode){ + cam_obj->recv_size = cam_obj->width * cam_obj->height / 5; + cam_obj->fb_size = cam_obj->recv_size; + } else { + cam_obj->recv_size = cam_obj->width * cam_obj->height * cam_obj->in_bytes_per_pixel; + cam_obj->fb_size = cam_obj->width * cam_obj->height * cam_obj->fb_bytes_per_pixel; + } + + ret = cam_dma_config(config); + CAM_CHECK_GOTO(ret == ESP_OK, "cam_dma_config failed", err); + + cam_obj->event_queue = xQueueCreate(cam_obj->dma_half_buffer_cnt - 1, sizeof(cam_event_t)); + CAM_CHECK_GOTO(cam_obj->event_queue != NULL, "event_queue create failed", err); + + size_t frame_buffer_queue_len = cam_obj->frame_cnt; + if (config->grab_mode == CAMERA_GRAB_LATEST && cam_obj->frame_cnt > 1) { + frame_buffer_queue_len = cam_obj->frame_cnt - 1; + } + cam_obj->frame_buffer_queue = xQueueCreate(frame_buffer_queue_len, sizeof(camera_fb_t*)); + CAM_CHECK_GOTO(cam_obj->frame_buffer_queue != NULL, "frame_buffer_queue create failed", err); + + ret = ll_cam_init_isr(cam_obj); + CAM_CHECK_GOTO(ret == ESP_OK, "cam intr alloc failed", err); + + +#if CONFIG_CAMERA_CORE0 + xTaskCreatePinnedToCore(cam_task, "cam_task", 2048, NULL, configMAX_PRIORITIES - 2, &cam_obj->task_handle, 0); +#elif CONFIG_CAMERA_CORE1 + xTaskCreatePinnedToCore(cam_task, "cam_task", 2048, NULL, configMAX_PRIORITIES - 2, &cam_obj->task_handle, 1); +#else + xTaskCreate(cam_task, "cam_task", 2048, NULL, configMAX_PRIORITIES - 2, &cam_obj->task_handle); +#endif + + ESP_LOGI(TAG, "cam config ok"); + return ESP_OK; + +err: + cam_deinit(); + return ESP_FAIL; +} + +esp_err_t cam_deinit(void) +{ + if (!cam_obj) { + return ESP_FAIL; + } + + cam_stop(); + if (cam_obj->task_handle) { + vTaskDelete(cam_obj->task_handle); + } + if (cam_obj->event_queue) { + vQueueDelete(cam_obj->event_queue); + } + if (cam_obj->frame_buffer_queue) { + vQueueDelete(cam_obj->frame_buffer_queue); + } + if (cam_obj->dma) { + free(cam_obj->dma); + } + if (cam_obj->dma_buffer) { + free(cam_obj->dma_buffer); + } + if (cam_obj->frames) { + for (int x = 0; x < cam_obj->frame_cnt; x++) { + free(cam_obj->frames[x].fb.buf - cam_obj->frames[x].fb_offset); + if (cam_obj->frames[x].dma) { + free(cam_obj->frames[x].dma); + } + } + free(cam_obj->frames); + } + + ll_cam_deinit(cam_obj); + + free(cam_obj); + cam_obj = NULL; + return ESP_OK; +} + +void cam_stop(void) +{ + ll_cam_vsync_intr_enable(cam_obj, false); + ll_cam_stop(cam_obj); +} + +void cam_start(void) +{ + ll_cam_vsync_intr_enable(cam_obj, true); +} + +camera_fb_t *cam_take(TickType_t timeout) +{ + camera_fb_t *dma_buffer = NULL; + TickType_t start = xTaskGetTickCount(); + xQueueReceive(cam_obj->frame_buffer_queue, (void *)&dma_buffer, timeout); + if (dma_buffer) { + if(cam_obj->jpeg_mode){ + // find the end marker for JPEG. Data after that can be discarded + int offset_e = cam_verify_jpeg_eoi(dma_buffer->buf, dma_buffer->len); + if (offset_e >= 0) { + // adjust buffer length + dma_buffer->len = offset_e + sizeof(JPEG_EOI_MARKER); + return dma_buffer; + } else { + ESP_LOGW(TAG, "NO-EOI"); + cam_give(dma_buffer); + return cam_take(timeout - (xTaskGetTickCount() - start));//recurse!!!! + } + } else if(cam_obj->psram_mode && cam_obj->in_bytes_per_pixel != cam_obj->fb_bytes_per_pixel){ + //currently this is used only for YUV to GRAYSCALE + dma_buffer->len = ll_cam_memcpy(cam_obj, dma_buffer->buf, dma_buffer->buf, dma_buffer->len); + } + return dma_buffer; + } else { + ESP_LOGW(TAG, "Failed to get the frame on time!"); + } + return NULL; +} + +void cam_give(camera_fb_t *dma_buffer) +{ + for (int x = 0; x < cam_obj->frame_cnt; x++) { + if (&cam_obj->frames[x].fb == dma_buffer) { + cam_obj->frames[x].en = 1; + break; + } + } +} diff --git a/code/components/esp32-camera-master/driver/camera.c b/code/components/esp32-camera-master/driver/camera.c deleted file mode 100644 index 9e6a7164..00000000 --- a/code/components/esp32-camera-master/driver/camera.c +++ /dev/null @@ -1,1592 +0,0 @@ -// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -#include -#include -#include -#include "time.h" -#include "sys/time.h" -#include "freertos/FreeRTOS.h" -#include "freertos/task.h" -#include "freertos/semphr.h" -#include "soc/soc.h" -#include "soc/gpio_sig_map.h" -#include "soc/i2s_reg.h" -#include "soc/i2s_struct.h" -#include "soc/io_mux_reg.h" -#include "driver/gpio.h" -#include "driver/rtc_io.h" -#include "driver/periph_ctrl.h" -#include "esp_intr_alloc.h" -#include "esp_system.h" -#include "nvs_flash.h" -#include "nvs.h" -#include "sensor.h" -#include "sccb.h" -#include "esp_camera.h" -#include "camera_common.h" -#include "xclk.h" -#if CONFIG_OV2640_SUPPORT -#include "ov2640.h" -#endif -#if CONFIG_OV7725_SUPPORT -#include "ov7725.h" -#endif -#if CONFIG_OV3660_SUPPORT -#include "ov3660.h" -#endif -#if CONFIG_OV5640_SUPPORT -#include "ov5640.h" -#endif -#if CONFIG_NT99141_SUPPORT -#include "nt99141.h" -#endif -#if CONFIG_OV7670_SUPPORT -#include "ov7670.h" -#endif - -typedef enum { - CAMERA_NONE = 0, - CAMERA_UNKNOWN = 1, - CAMERA_OV7725 = 7725, - CAMERA_OV2640 = 2640, - CAMERA_OV3660 = 3660, - CAMERA_OV5640 = 5640, - CAMERA_OV7670 = 7670, - CAMERA_NT99141 = 9141, -} camera_model_t; - -#define REG_PID 0x0A -#define REG_VER 0x0B -#define REG_MIDH 0x1C -#define REG_MIDL 0x1D - -#define REG16_CHIDH 0x300A -#define REG16_CHIDL 0x300B - -#if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) -#include "esp32-hal-log.h" -#define TAG "" -#else -#include "esp_log.h" -static const char* TAG = "camera"; -#endif -static const char* CAMERA_SENSOR_NVS_KEY = "sensor"; -static const char* CAMERA_PIXFORMAT_NVS_KEY = "pixformat"; - -typedef void (*dma_filter_t)(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst); - -typedef struct camera_fb_s { - uint8_t * buf; - size_t len; - size_t width; - size_t height; - pixformat_t format; - struct timeval timestamp; - size_t size; - uint8_t ref; - uint8_t bad; - struct camera_fb_s * next; -} camera_fb_int_t; - -typedef struct fb_s { - uint8_t * buf; - size_t len; - struct fb_s * next; -} fb_item_t; - -typedef struct { - camera_config_t config; - sensor_t sensor; - - camera_fb_int_t *fb; - size_t fb_size; - size_t data_size; - - size_t width; - size_t height; - size_t in_bytes_per_pixel; - size_t fb_bytes_per_pixel; - - size_t dma_received_count; - size_t dma_filtered_count; - size_t dma_per_line; - size_t dma_buf_width; - size_t dma_sample_count; - - lldesc_t *dma_desc; - dma_elem_t **dma_buf; - size_t dma_desc_count; - size_t dma_desc_cur; - - i2s_sampling_mode_t sampling_mode; - dma_filter_t dma_filter; - intr_handle_t i2s_intr_handle; - QueueHandle_t data_ready; - QueueHandle_t fb_in; - QueueHandle_t fb_out; - - SemaphoreHandle_t frame_ready; - TaskHandle_t dma_filter_task; -} camera_state_t; - -camera_state_t* s_state = NULL; - -static void i2s_init(); -static int i2s_run(); -static void IRAM_ATTR vsync_isr(void* arg); -static void IRAM_ATTR i2s_isr(void* arg); -static esp_err_t dma_desc_init(); -static void dma_desc_deinit(); -static void dma_filter_task(void *pvParameters); -static void dma_filter_grayscale(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst); -static void dma_filter_grayscale_highspeed(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst); -static void dma_filter_yuyv(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst); -static void dma_filter_yuyv_highspeed(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst); -static void dma_filter_jpeg(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst); -static void i2s_stop(bool* need_yield); - -static bool is_hs_mode() -{ - return s_state->config.xclk_freq_hz > 10000000; -} - -static size_t i2s_bytes_per_sample(i2s_sampling_mode_t mode) -{ - switch(mode) { - case SM_0A00_0B00: - return 4; - case SM_0A0B_0B0C: - return 4; - case SM_0A0B_0C0D: - return 2; - default: - assert(0 && "invalid sampling mode"); - return 0; - } -} - -static int IRAM_ATTR _gpio_get_level(gpio_num_t gpio_num) -{ - if (gpio_num < 32) { - return (GPIO.in >> gpio_num) & 0x1; - } else { - return (GPIO.in1.data >> (gpio_num - 32)) & 0x1; - } -} - -static void IRAM_ATTR vsync_intr_disable() -{ - gpio_set_intr_type(s_state->config.pin_vsync, GPIO_INTR_DISABLE); -} - -static void vsync_intr_enable() -{ - gpio_set_intr_type(s_state->config.pin_vsync, GPIO_INTR_NEGEDGE); -} - -static int skip_frame() -{ - if (s_state == NULL) { - return -1; - } - int64_t st_t = esp_timer_get_time(); - while (_gpio_get_level(s_state->config.pin_vsync) == 0) { - if((esp_timer_get_time() - st_t) > 1000000LL){ - goto timeout; - } - } - while (_gpio_get_level(s_state->config.pin_vsync) != 0) { - if((esp_timer_get_time() - st_t) > 1000000LL){ - goto timeout; - } - } - while (_gpio_get_level(s_state->config.pin_vsync) == 0) { - if((esp_timer_get_time() - st_t) > 1000000LL){ - goto timeout; - } - } - return 0; - -timeout: - ESP_LOGE(TAG, "Timeout waiting for VSYNC"); - return -1; -} - -static void camera_fb_deinit() -{ - camera_fb_int_t * _fb1 = s_state->fb, * _fb2 = NULL; - while(s_state->fb) { - _fb2 = s_state->fb; - s_state->fb = _fb2->next; - if(_fb2->next == _fb1) { - s_state->fb = NULL; - } - free(_fb2->buf); - free(_fb2); - } -} - -static esp_err_t camera_fb_init(size_t count) -{ - if(!count) { - return ESP_ERR_INVALID_ARG; - } - - camera_fb_deinit(); - - ESP_LOGI(TAG, "Allocating %u frame buffers (%d KB total)", count, (s_state->fb_size * count) / 1024); - - camera_fb_int_t * _fb = NULL, * _fb1 = NULL, * _fb2 = NULL; - for(size_t i = 0; i < count; i++) { - _fb2 = (camera_fb_int_t *)malloc(sizeof(camera_fb_int_t)); - if(!_fb2) { - goto fail; - } - memset(_fb2, 0, sizeof(camera_fb_int_t)); - _fb2->size = s_state->fb_size; - _fb2->buf = (uint8_t*) calloc(_fb2->size, 1); - if(!_fb2->buf) { - ESP_LOGI(TAG, "Allocating %d KB frame buffer in PSRAM", s_state->fb_size/1024); - _fb2->buf = (uint8_t*) heap_caps_calloc(_fb2->size, 1, MALLOC_CAP_SPIRAM | MALLOC_CAP_8BIT); - } else { - ESP_LOGI(TAG, "Allocating %d KB frame buffer in OnBoard RAM", s_state->fb_size/1024); - } - if(!_fb2->buf) { - free(_fb2); - ESP_LOGE(TAG, "Allocating %d KB frame buffer Failed", s_state->fb_size/1024); - goto fail; - } - memset(_fb2->buf, 0, _fb2->size); - _fb2->next = _fb; - _fb = _fb2; - if(!i) { - _fb1 = _fb2; - } - } - if(_fb1) { - _fb1->next = _fb; - } - - s_state->fb = _fb;//load first buffer - - return ESP_OK; - -fail: - while(_fb) { - _fb2 = _fb; - _fb = _fb->next; - free(_fb2->buf); - free(_fb2); - } - return ESP_ERR_NO_MEM; -} - -static esp_err_t dma_desc_init() -{ - assert(s_state->width % 4 == 0); - size_t line_size = s_state->width * s_state->in_bytes_per_pixel * - i2s_bytes_per_sample(s_state->sampling_mode); - ESP_LOGD(TAG, "Line width (for DMA): %d bytes", line_size); - size_t dma_per_line = 1; - size_t buf_size = line_size; - while (buf_size >= 4096) { - buf_size /= 2; - dma_per_line *= 2; - } - size_t dma_desc_count = dma_per_line * 4; - s_state->dma_buf_width = line_size; - s_state->dma_per_line = dma_per_line; - s_state->dma_desc_count = dma_desc_count; - ESP_LOGD(TAG, "DMA buffer size: %d, DMA buffers per line: %d", buf_size, dma_per_line); - ESP_LOGD(TAG, "DMA buffer count: %d", dma_desc_count); - ESP_LOGD(TAG, "DMA buffer total: %d bytes", buf_size * dma_desc_count); - - s_state->dma_buf = (dma_elem_t**) malloc(sizeof(dma_elem_t*) * dma_desc_count); - if (s_state->dma_buf == NULL) { - return ESP_ERR_NO_MEM; - } - s_state->dma_desc = (lldesc_t*) malloc(sizeof(lldesc_t) * dma_desc_count); - if (s_state->dma_desc == NULL) { - return ESP_ERR_NO_MEM; - } - size_t dma_sample_count = 0; - for (int i = 0; i < dma_desc_count; ++i) { - ESP_LOGD(TAG, "Allocating DMA buffer #%d, size=%d", i, buf_size); - dma_elem_t* buf = (dma_elem_t*) malloc(buf_size); - if (buf == NULL) { - return ESP_ERR_NO_MEM; - } - s_state->dma_buf[i] = buf; - ESP_LOGV(TAG, "dma_buf[%d]=%p", i, buf); - - lldesc_t* pd = &s_state->dma_desc[i]; - pd->length = buf_size; - if (s_state->sampling_mode == SM_0A0B_0B0C && - (i + 1) % dma_per_line == 0) { - pd->length -= 4; - } - dma_sample_count += pd->length / 4; - pd->size = pd->length; - pd->owner = 1; - pd->sosf = 1; - pd->buf = (uint8_t*) buf; - pd->offset = 0; - pd->empty = 0; - pd->eof = 1; - pd->qe.stqe_next = &s_state->dma_desc[(i + 1) % dma_desc_count]; - } - s_state->dma_sample_count = dma_sample_count; - return ESP_OK; -} - -static void dma_desc_deinit() -{ - if (s_state->dma_buf) { - for (int i = 0; i < s_state->dma_desc_count; ++i) { - free(s_state->dma_buf[i]); - } - } - free(s_state->dma_buf); - free(s_state->dma_desc); -} - -static inline void IRAM_ATTR i2s_conf_reset() -{ - const uint32_t lc_conf_reset_flags = I2S_IN_RST_M | I2S_AHBM_RST_M - | I2S_AHBM_FIFO_RST_M; - I2S0.lc_conf.val |= lc_conf_reset_flags; - I2S0.lc_conf.val &= ~lc_conf_reset_flags; - - const uint32_t conf_reset_flags = I2S_RX_RESET_M | I2S_RX_FIFO_RESET_M - | I2S_TX_RESET_M | I2S_TX_FIFO_RESET_M; - I2S0.conf.val |= conf_reset_flags; - I2S0.conf.val &= ~conf_reset_flags; - while (I2S0.state.rx_fifo_reset_back) { - ; - } -} - -static void i2s_gpio_init(const camera_config_t* config) -{ - // Configure input GPIOs - const gpio_num_t pins[] = { - config->pin_d7, - config->pin_d6, - config->pin_d5, - config->pin_d4, - config->pin_d3, - config->pin_d2, - config->pin_d1, - config->pin_d0, - config->pin_vsync, - config->pin_href, - config->pin_pclk - }; - gpio_config_t conf = { - .mode = GPIO_MODE_INPUT, - .pull_up_en = GPIO_PULLUP_ENABLE, - .pull_down_en = GPIO_PULLDOWN_DISABLE, - .intr_type = GPIO_INTR_DISABLE, - .pin_bit_mask = 0LL - }; - for (int i = 0; i < sizeof(pins) / sizeof(gpio_num_t); ++i) { - if (rtc_gpio_is_valid_gpio(pins[i])) { - rtc_gpio_deinit(pins[i]); - } - conf.pin_bit_mask |= 1LL << pins[i]; - } - gpio_config(&conf); -} - -static void i2s_init() -{ - camera_config_t* config = &s_state->config; - - // Route input GPIOs to I2S peripheral using GPIO matrix - gpio_matrix_in(config->pin_d0, I2S0I_DATA_IN0_IDX, false); - gpio_matrix_in(config->pin_d1, I2S0I_DATA_IN1_IDX, false); - gpio_matrix_in(config->pin_d2, I2S0I_DATA_IN2_IDX, false); - gpio_matrix_in(config->pin_d3, I2S0I_DATA_IN3_IDX, false); - gpio_matrix_in(config->pin_d4, I2S0I_DATA_IN4_IDX, false); - gpio_matrix_in(config->pin_d5, I2S0I_DATA_IN5_IDX, false); - gpio_matrix_in(config->pin_d6, I2S0I_DATA_IN6_IDX, false); - gpio_matrix_in(config->pin_d7, I2S0I_DATA_IN7_IDX, false); - gpio_matrix_in(config->pin_vsync, I2S0I_V_SYNC_IDX, false); - gpio_matrix_in(0x38, I2S0I_H_SYNC_IDX, false); - gpio_matrix_in(config->pin_href, I2S0I_H_ENABLE_IDX, false); - gpio_matrix_in(config->pin_pclk, I2S0I_WS_IN_IDX, false); - - // Enable and configure I2S peripheral - periph_module_enable(PERIPH_I2S0_MODULE); - // Toggle some reset bits in LC_CONF register - // Toggle some reset bits in CONF register - i2s_conf_reset(); - // Enable slave mode (sampling clock is external) - I2S0.conf.rx_slave_mod = 1; - // Enable parallel mode - I2S0.conf2.lcd_en = 1; - // Use HSYNC/VSYNC/HREF to control sampling - I2S0.conf2.camera_en = 1; - // Configure clock divider - I2S0.clkm_conf.clkm_div_a = 1; - I2S0.clkm_conf.clkm_div_b = 0; - I2S0.clkm_conf.clkm_div_num = 2; - // FIFO will sink data to DMA - I2S0.fifo_conf.dscr_en = 1; - // FIFO configuration - I2S0.fifo_conf.rx_fifo_mod = s_state->sampling_mode; - I2S0.fifo_conf.rx_fifo_mod_force_en = 1; - I2S0.conf_chan.rx_chan_mod = 1; - // Clear flags which are used in I2S serial mode - I2S0.sample_rate_conf.rx_bits_mod = 0; - I2S0.conf.rx_right_first = 0; - I2S0.conf.rx_msb_right = 0; - I2S0.conf.rx_msb_shift = 0; - I2S0.conf.rx_mono = 0; - I2S0.conf.rx_short_sync = 0; - I2S0.timing.val = 0; - I2S0.timing.rx_dsync_sw = 1; - - // Allocate I2S interrupt, keep it disabled - ESP_ERROR_CHECK(esp_intr_alloc(ETS_I2S0_INTR_SOURCE, - ESP_INTR_FLAG_INTRDISABLED | ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_IRAM, - &i2s_isr, NULL, &s_state->i2s_intr_handle)); -} - -static void IRAM_ATTR i2s_start_bus() -{ - s_state->dma_desc_cur = 0; - s_state->dma_received_count = 0; - //s_state->dma_filtered_count = 0; - esp_intr_disable(s_state->i2s_intr_handle); - i2s_conf_reset(); - - I2S0.rx_eof_num = s_state->dma_sample_count; - I2S0.in_link.addr = (uint32_t) &s_state->dma_desc[0]; - I2S0.in_link.start = 1; - I2S0.int_clr.val = I2S0.int_raw.val; - I2S0.int_ena.val = 0; - I2S0.int_ena.in_done = 1; - - esp_intr_enable(s_state->i2s_intr_handle); - I2S0.conf.rx_start = 1; - if (s_state->config.pixel_format == PIXFORMAT_JPEG) { - vsync_intr_enable(); - } -} - -static int i2s_run() -{ - for (int i = 0; i < s_state->dma_desc_count; ++i) { - lldesc_t* d = &s_state->dma_desc[i]; - ESP_LOGV(TAG, "DMA desc %2d: %u %u %u %u %u %u %p %p", - i, d->length, d->size, d->offset, d->eof, d->sosf, d->owner, d->buf, d->qe.stqe_next); - memset(s_state->dma_buf[i], 0, d->length); - } - - // wait for frame - camera_fb_int_t * fb = s_state->fb; - while(s_state->config.fb_count > 1) { - while(s_state->fb->ref && s_state->fb->next != fb) { - s_state->fb = s_state->fb->next; - } - if(s_state->fb->ref == 0) { - break; - } - vTaskDelay(2); - } - - //todo: wait for vsync - ESP_LOGV(TAG, "Waiting for negative edge on VSYNC"); - - int64_t st_t = esp_timer_get_time(); - while (_gpio_get_level(s_state->config.pin_vsync) != 0) { - if((esp_timer_get_time() - st_t) > 1000000LL){ - ESP_LOGE(TAG, "Timeout waiting for VSYNC"); - return -1; - } - } - ESP_LOGV(TAG, "Got VSYNC"); - i2s_start_bus(); - return 0; -} - -static void IRAM_ATTR i2s_stop_bus() -{ - esp_intr_disable(s_state->i2s_intr_handle); - vsync_intr_disable(); - i2s_conf_reset(); - I2S0.conf.rx_start = 0; -} - -static void IRAM_ATTR i2s_stop(bool* need_yield) -{ - if(s_state->config.fb_count == 1 && !s_state->fb->bad) { - i2s_stop_bus(); - } else { - s_state->dma_received_count = 0; - } - - size_t val = SIZE_MAX; - BaseType_t higher_priority_task_woken; - BaseType_t ret = xQueueSendFromISR(s_state->data_ready, &val, &higher_priority_task_woken); - if(need_yield && !*need_yield) { - *need_yield = (ret == pdTRUE && higher_priority_task_woken == pdTRUE); - } -} - -static void IRAM_ATTR signal_dma_buf_received(bool* need_yield) -{ - size_t dma_desc_filled = s_state->dma_desc_cur; - s_state->dma_desc_cur = (dma_desc_filled + 1) % s_state->dma_desc_count; - s_state->dma_received_count++; - if(!s_state->fb->ref && s_state->fb->bad){ - *need_yield = false; - return; - } - BaseType_t higher_priority_task_woken; - BaseType_t ret = xQueueSendFromISR(s_state->data_ready, &dma_desc_filled, &higher_priority_task_woken); - if (ret != pdTRUE) { - if(!s_state->fb->ref) { - s_state->fb->bad = 1; - } - //ESP_EARLY_LOGW(TAG, "qsf:%d", s_state->dma_received_count); - //ets_printf("qsf:%d\n", s_state->dma_received_count); - //ets_printf("qovf\n"); - } - *need_yield = (ret == pdTRUE && higher_priority_task_woken == pdTRUE); -} - -static void IRAM_ATTR i2s_isr(void* arg) -{ - I2S0.int_clr.val = I2S0.int_raw.val; - bool need_yield = false; - signal_dma_buf_received(&need_yield); - if (s_state->config.pixel_format != PIXFORMAT_JPEG - && s_state->dma_received_count == s_state->height * s_state->dma_per_line) { - i2s_stop(&need_yield); - } - if (need_yield) { - portYIELD_FROM_ISR(); - } -} - -static void IRAM_ATTR vsync_isr(void* arg) -{ - GPIO.status1_w1tc.val = GPIO.status1.val; - GPIO.status_w1tc = GPIO.status; - bool need_yield = false; - //if vsync is low and we have received some data, frame is done - if (_gpio_get_level(s_state->config.pin_vsync) == 0) { - if(s_state->dma_received_count > 0) { - signal_dma_buf_received(&need_yield); - //ets_printf("end_vsync\n"); - if(s_state->dma_filtered_count > 1 || s_state->fb->bad || s_state->config.fb_count > 1) { - i2s_stop(&need_yield); - } - //ets_printf("vs\n"); - } - if(s_state->config.fb_count > 1 || s_state->dma_filtered_count < 2) { - I2S0.conf.rx_start = 0; - I2S0.in_link.start = 0; - I2S0.int_clr.val = I2S0.int_raw.val; - i2s_conf_reset(); - s_state->dma_desc_cur = (s_state->dma_desc_cur + 1) % s_state->dma_desc_count; - //I2S0.rx_eof_num = s_state->dma_sample_count; - I2S0.in_link.addr = (uint32_t) &s_state->dma_desc[s_state->dma_desc_cur]; - I2S0.in_link.start = 1; - I2S0.conf.rx_start = 1; - s_state->dma_received_count = 0; - } - } - if (need_yield) { - portYIELD_FROM_ISR(); - } -} - -static void IRAM_ATTR camera_fb_done() -{ - camera_fb_int_t * fb = NULL, * fb2 = NULL; - BaseType_t taskAwoken = 0; - - if(s_state->config.fb_count == 1) { - xSemaphoreGive(s_state->frame_ready); - return; - } - - fb = s_state->fb; - if(!fb->ref && fb->len) { - //add reference - fb->ref = 1; - - //check if the queue is full - if(xQueueIsQueueFullFromISR(s_state->fb_out) == pdTRUE) { - //pop frame buffer from the queue - if(xQueueReceiveFromISR(s_state->fb_out, &fb2, &taskAwoken) == pdTRUE) { - //free the popped buffer - fb2->ref = 0; - fb2->len = 0; - //push the new frame to the end of the queue - xQueueSendFromISR(s_state->fb_out, &fb, &taskAwoken); - } else { - //queue is full and we could not pop a frame from it - } - } else { - //push the new frame to the end of the queue - xQueueSendFromISR(s_state->fb_out, &fb, &taskAwoken); - } - } else { - //frame was referenced or empty - } - - //return buffers to be filled - while(xQueueReceiveFromISR(s_state->fb_in, &fb2, &taskAwoken) == pdTRUE) { - fb2->ref = 0; - fb2->len = 0; - } - - //advance frame buffer only if the current one has data - if(s_state->fb->len) { - s_state->fb = s_state->fb->next; - } - //try to find the next free frame buffer - while(s_state->fb->ref && s_state->fb->next != fb) { - s_state->fb = s_state->fb->next; - } - //is the found frame buffer free? - if(!s_state->fb->ref) { - //buffer found. make sure it's empty - s_state->fb->len = 0; - *((uint32_t *)s_state->fb->buf) = 0; - } else { - //stay at the previous buffer - s_state->fb = fb; - } -} - -static void IRAM_ATTR dma_finish_frame() -{ - size_t buf_len = s_state->width * s_state->fb_bytes_per_pixel / s_state->dma_per_line; - - if(!s_state->fb->ref) { - // is the frame bad? - if(s_state->fb->bad){ - s_state->fb->bad = 0; - s_state->fb->len = 0; - *((uint32_t *)s_state->fb->buf) = 0; - if(s_state->config.fb_count == 1) { - i2s_start_bus(); - } - //ets_printf("bad\n"); - } else { - s_state->fb->len = s_state->dma_filtered_count * buf_len; - if(s_state->fb->len) { - //find the end marker for JPEG. Data after that can be discarded - if(s_state->fb->format == PIXFORMAT_JPEG){ - uint8_t * dptr = &s_state->fb->buf[s_state->fb->len - 1]; - while(dptr > s_state->fb->buf){ - if(dptr[0] == 0xFF && dptr[1] == 0xD9 && dptr[2] == 0x00 && dptr[3] == 0x00){ - dptr += 2; - s_state->fb->len = dptr - s_state->fb->buf; - if((s_state->fb->len & 0x1FF) == 0){ - s_state->fb->len += 1; - } - if((s_state->fb->len % 100) == 0){ - s_state->fb->len += 1; - } - break; - } - dptr--; - } - } - //send out the frame - camera_fb_done(); - } else if(s_state->config.fb_count == 1){ - //frame was empty? - i2s_start_bus(); - } else { - //ets_printf("empty\n"); - } - } - } else if(s_state->fb->len) { - camera_fb_done(); - } - s_state->dma_filtered_count = 0; -} - -static void IRAM_ATTR dma_filter_buffer(size_t buf_idx) -{ - //no need to process the data if frame is in use or is bad - if(s_state->fb->ref || s_state->fb->bad) { - return; - } - - //check if there is enough space in the frame buffer for the new data - size_t buf_len = s_state->width * s_state->fb_bytes_per_pixel / s_state->dma_per_line; - size_t fb_pos = s_state->dma_filtered_count * buf_len; - if(fb_pos > s_state->fb_size - buf_len) { - //size_t processed = s_state->dma_received_count * buf_len; - //ets_printf("[%s:%u] ovf pos: %u, processed: %u\n", __FUNCTION__, __LINE__, fb_pos, processed); - return; - } - - //convert I2S DMA buffer to pixel data - (*s_state->dma_filter)(s_state->dma_buf[buf_idx], &s_state->dma_desc[buf_idx], s_state->fb->buf + fb_pos); - - //first frame buffer - if(!s_state->dma_filtered_count) { - //check for correct JPEG header - if(s_state->sensor.pixformat == PIXFORMAT_JPEG) { - uint32_t sig = *((uint32_t *)s_state->fb->buf) & 0xFFFFFF; - if(sig != 0xffd8ff) { - ESP_LOGD(TAG,"unexpected JPEG signature 0x%08x\n", sig); - s_state->fb->bad = 1; - return; - } - } - //set the frame properties - s_state->fb->width = resolution[s_state->sensor.status.framesize].width; - s_state->fb->height = resolution[s_state->sensor.status.framesize].height; - s_state->fb->format = s_state->sensor.pixformat; - - uint64_t us = (uint64_t)esp_timer_get_time(); - s_state->fb->timestamp.tv_sec = us / 1000000UL; - s_state->fb->timestamp.tv_usec = us % 1000000UL; - } - s_state->dma_filtered_count++; -} - -static void IRAM_ATTR dma_filter_task(void *pvParameters) -{ - s_state->dma_filtered_count = 0; - while (true) { - size_t buf_idx; - if(xQueueReceive(s_state->data_ready, &buf_idx, portMAX_DELAY) == pdTRUE) { - if (buf_idx == SIZE_MAX) { - //this is the end of the frame - dma_finish_frame(); - } else { - dma_filter_buffer(buf_idx); - } - } - } -} - -static void IRAM_ATTR dma_filter_jpeg(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 4; - // manually unrolling 4 iterations of the loop here - for (size_t i = 0; i < end; ++i) { - dst[0] = src[0].sample1; - dst[1] = src[1].sample1; - dst[2] = src[2].sample1; - dst[3] = src[3].sample1; - src += 4; - dst += 4; - } -} - -static void IRAM_ATTR dma_filter_grayscale(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 4; - for (size_t i = 0; i < end; ++i) { - // manually unrolling 4 iterations of the loop here - dst[0] = src[0].sample1; - dst[1] = src[1].sample1; - dst[2] = src[2].sample1; - dst[3] = src[3].sample1; - src += 4; - dst += 4; - } -} - -static void IRAM_ATTR dma_filter_grayscale_highspeed(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 8; - for (size_t i = 0; i < end; ++i) { - // manually unrolling 4 iterations of the loop here - dst[0] = src[0].sample1; - dst[1] = src[2].sample1; - dst[2] = src[4].sample1; - dst[3] = src[6].sample1; - src += 8; - dst += 4; - } - // the final sample of a line in SM_0A0B_0B0C sampling mode needs special handling - if ((dma_desc->length & 0x7) != 0) { - dst[0] = src[0].sample1; - dst[1] = src[2].sample1; - } -} - -static void IRAM_ATTR dma_filter_yuyv(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 4; - for (size_t i = 0; i < end; ++i) { - dst[0] = src[0].sample1;//y0 - dst[1] = src[0].sample2;//u - dst[2] = src[1].sample1;//y1 - dst[3] = src[1].sample2;//v - - dst[4] = src[2].sample1;//y0 - dst[5] = src[2].sample2;//u - dst[6] = src[3].sample1;//y1 - dst[7] = src[3].sample2;//v - src += 4; - dst += 8; - } -} - -static void IRAM_ATTR dma_filter_yuyv_highspeed(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 8; - for (size_t i = 0; i < end; ++i) { - dst[0] = src[0].sample1;//y0 - dst[1] = src[1].sample1;//u - dst[2] = src[2].sample1;//y1 - dst[3] = src[3].sample1;//v - - dst[4] = src[4].sample1;//y0 - dst[5] = src[5].sample1;//u - dst[6] = src[6].sample1;//y1 - dst[7] = src[7].sample1;//v - src += 8; - dst += 8; - } - if ((dma_desc->length & 0x7) != 0) { - dst[0] = src[0].sample1;//y0 - dst[1] = src[1].sample1;//u - dst[2] = src[2].sample1;//y1 - dst[3] = src[2].sample2;//v - } -} - -static void IRAM_ATTR dma_filter_rgb888(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 4; - uint8_t lb, hb; - for (size_t i = 0; i < end; ++i) { - hb = src[0].sample1; - lb = src[0].sample2; - dst[0] = (lb & 0x1F) << 3; - dst[1] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[2] = hb & 0xF8; - - hb = src[1].sample1; - lb = src[1].sample2; - dst[3] = (lb & 0x1F) << 3; - dst[4] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[5] = hb & 0xF8; - - hb = src[2].sample1; - lb = src[2].sample2; - dst[6] = (lb & 0x1F) << 3; - dst[7] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[8] = hb & 0xF8; - - hb = src[3].sample1; - lb = src[3].sample2; - dst[9] = (lb & 0x1F) << 3; - dst[10] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[11] = hb & 0xF8; - src += 4; - dst += 12; - } -} - -static void IRAM_ATTR dma_filter_rgb888_highspeed(const dma_elem_t* src, lldesc_t* dma_desc, uint8_t* dst) -{ - size_t end = dma_desc->length / sizeof(dma_elem_t) / 8; - uint8_t lb, hb; - for (size_t i = 0; i < end; ++i) { - hb = src[0].sample1; - lb = src[1].sample1; - dst[0] = (lb & 0x1F) << 3; - dst[1] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[2] = hb & 0xF8; - - hb = src[2].sample1; - lb = src[3].sample1; - dst[3] = (lb & 0x1F) << 3; - dst[4] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[5] = hb & 0xF8; - - hb = src[4].sample1; - lb = src[5].sample1; - dst[6] = (lb & 0x1F) << 3; - dst[7] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[8] = hb & 0xF8; - - hb = src[6].sample1; - lb = src[7].sample1; - dst[9] = (lb & 0x1F) << 3; - dst[10] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[11] = hb & 0xF8; - - src += 8; - dst += 12; - } - if ((dma_desc->length & 0x7) != 0) { - hb = src[0].sample1; - lb = src[1].sample1; - dst[0] = (lb & 0x1F) << 3; - dst[1] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[2] = hb & 0xF8; - - hb = src[2].sample1; - lb = src[2].sample2; - dst[3] = (lb & 0x1F) << 3; - dst[4] = (hb & 0x07) << 5 | (lb & 0xE0) >> 3; - dst[5] = hb & 0xF8; - } -} - -/* - * Public Methods - * */ - -esp_err_t camera_probe(const camera_config_t* config, camera_model_t* out_camera_model) -{ - if (s_state != NULL) { - return ESP_ERR_INVALID_STATE; - } - - s_state = (camera_state_t*) calloc(sizeof(*s_state), 1); - if (!s_state) { - return ESP_ERR_NO_MEM; - } - - if(config->pin_xclk >= 0) { - ESP_LOGD(TAG, "Enabling XCLK output"); - camera_enable_out_clock(config); - } - - if (config->pin_sscb_sda != -1) { - ESP_LOGD(TAG, "Initializing SSCB"); - SCCB_Init(config->pin_sscb_sda, config->pin_sscb_scl); - } - - if(config->pin_pwdn >= 0) { - ESP_LOGD(TAG, "Resetting camera by power down line"); - gpio_config_t conf = { 0 }; - conf.pin_bit_mask = 1LL << config->pin_pwdn; - conf.mode = GPIO_MODE_OUTPUT; - gpio_config(&conf); - - // carefull, logic is inverted compared to reset pin - gpio_set_level(config->pin_pwdn, 1); - vTaskDelay(10 / portTICK_PERIOD_MS); - gpio_set_level(config->pin_pwdn, 0); - vTaskDelay(10 / portTICK_PERIOD_MS); - } - - if(config->pin_reset >= 0) { - ESP_LOGD(TAG, "Resetting camera"); - gpio_config_t conf = { 0 }; - conf.pin_bit_mask = 1LL << config->pin_reset; - conf.mode = GPIO_MODE_OUTPUT; - gpio_config(&conf); - - gpio_set_level(config->pin_reset, 0); - vTaskDelay(10 / portTICK_PERIOD_MS); - gpio_set_level(config->pin_reset, 1); - vTaskDelay(10 / portTICK_PERIOD_MS); - } - - ESP_LOGD(TAG, "Searching for camera address"); - vTaskDelay(10 / portTICK_PERIOD_MS); - uint8_t slv_addr = SCCB_Probe(); - if (slv_addr == 0) { - *out_camera_model = CAMERA_NONE; - camera_disable_out_clock(); - return ESP_ERR_CAMERA_NOT_DETECTED; - } - - //slv_addr = 0x30; - ESP_LOGD(TAG, "Detected camera at address=0x%02x", slv_addr); - sensor_id_t* id = &s_state->sensor.id; - -#if CONFIG_OV2640_SUPPORT - if (slv_addr == 0x30) { - ESP_LOGD(TAG, "Resetting OV2640"); - //camera might be OV2640. try to reset it - SCCB_Write(0x30, 0xFF, 0x01);//bank sensor - SCCB_Write(0x30, 0x12, 0x80);//reset - vTaskDelay(10 / portTICK_PERIOD_MS); - slv_addr = SCCB_Probe(); - } -#endif -#if CONFIG_NT99141_SUPPORT - if (slv_addr == 0x2a) - { - ESP_LOGD(TAG, "Resetting NT99141"); - SCCB_Write16(0x2a, 0x3008, 0x01);//bank sensor - } -#endif - - s_state->sensor.slv_addr = slv_addr; - s_state->sensor.xclk_freq_hz = config->xclk_freq_hz; - -#if (CONFIG_OV3660_SUPPORT || CONFIG_OV5640_SUPPORT || CONFIG_NT99141_SUPPORT) - if(s_state->sensor.slv_addr == 0x3c){ - id->PID = SCCB_Read16(s_state->sensor.slv_addr, REG16_CHIDH); - id->VER = SCCB_Read16(s_state->sensor.slv_addr, REG16_CHIDL); - vTaskDelay(10 / portTICK_PERIOD_MS); - ESP_LOGD(TAG, "Camera PID=0x%02x VER=0x%02x", id->PID, id->VER); - } else if(s_state->sensor.slv_addr == 0x2a){ - id->PID = SCCB_Read16(s_state->sensor.slv_addr, 0x3000); - id->VER = SCCB_Read16(s_state->sensor.slv_addr, 0x3001); - vTaskDelay(10 / portTICK_PERIOD_MS); - ESP_LOGD(TAG, "Camera PID=0x%02x VER=0x%02x", id->PID, id->VER); - if(config->xclk_freq_hz > 10000000) - { - ESP_LOGE(TAG, "NT99141: only XCLK under 10MHz is supported, and XCLK is now set to 10M"); - s_state->sensor.xclk_freq_hz = 10000000; - } - } else { -#endif - id->PID = SCCB_Read(s_state->sensor.slv_addr, REG_PID); - id->VER = SCCB_Read(s_state->sensor.slv_addr, REG_VER); - id->MIDL = SCCB_Read(s_state->sensor.slv_addr, REG_MIDL); - id->MIDH = SCCB_Read(s_state->sensor.slv_addr, REG_MIDH); - vTaskDelay(10 / portTICK_PERIOD_MS); - ESP_LOGD(TAG, "Camera PID=0x%02x VER=0x%02x MIDL=0x%02x MIDH=0x%02x", - id->PID, id->VER, id->MIDH, id->MIDL); - -#if (CONFIG_OV3660_SUPPORT || CONFIG_OV5640_SUPPORT || CONFIG_NT99141_SUPPORT) - } -#endif - - - switch (id->PID) { -#if CONFIG_OV2640_SUPPORT - case OV2640_PID: - *out_camera_model = CAMERA_OV2640; - ov2640_init(&s_state->sensor); - break; -#endif -#if CONFIG_OV7725_SUPPORT - case OV7725_PID: - *out_camera_model = CAMERA_OV7725; - ov7725_init(&s_state->sensor); - break; -#endif -#if CONFIG_OV3660_SUPPORT - case OV3660_PID: - *out_camera_model = CAMERA_OV3660; - ov3660_init(&s_state->sensor); - break; -#endif -#if CONFIG_OV5640_SUPPORT - case OV5640_PID: - *out_camera_model = CAMERA_OV5640; - ov5640_init(&s_state->sensor); - break; -#endif -#if CONFIG_OV7670_SUPPORT - case OV7670_PID: - *out_camera_model = CAMERA_OV7670; - ov7670_init(&s_state->sensor); - break; -#endif -#if CONFIG_NT99141_SUPPORT - case NT99141_PID: - *out_camera_model = CAMERA_NT99141; - NT99141_init(&s_state->sensor); - break; -#endif - default: - id->PID = 0; - *out_camera_model = CAMERA_UNKNOWN; - camera_disable_out_clock(); - ESP_LOGE(TAG, "Detected camera not supported."); - return ESP_ERR_CAMERA_NOT_SUPPORTED; - } - - ESP_LOGD(TAG, "Doing SW reset of sensor"); - s_state->sensor.reset(&s_state->sensor); - - return ESP_OK; -} - -esp_err_t camera_init(const camera_config_t* config) -{ - if (!s_state) { - return ESP_ERR_INVALID_STATE; - } - if (s_state->sensor.id.PID == 0) { - return ESP_ERR_CAMERA_NOT_SUPPORTED; - } - memcpy(&s_state->config, config, sizeof(*config)); - esp_err_t err = ESP_OK; - framesize_t frame_size = (framesize_t) config->frame_size; - pixformat_t pix_format = (pixformat_t) config->pixel_format; - - switch (s_state->sensor.id.PID) { -#if CONFIG_OV2640_SUPPORT - case OV2640_PID: - if (frame_size > FRAMESIZE_UXGA) { - frame_size = FRAMESIZE_UXGA; - } - break; -#endif -#if CONFIG_OV7725_SUPPORT - case OV7725_PID: - if (frame_size > FRAMESIZE_VGA) { - frame_size = FRAMESIZE_VGA; - } - break; -#endif -#if CONFIG_OV3660_SUPPORT - case OV3660_PID: - if (frame_size > FRAMESIZE_QXGA) { - frame_size = FRAMESIZE_QXGA; - } - break; -#endif -#if CONFIG_OV5640_SUPPORT - case OV5640_PID: - if (frame_size > FRAMESIZE_QSXGA) { - frame_size = FRAMESIZE_QSXGA; - } - break; -#endif -#if CONFIG_OV7670_SUPPORT - case OV7670_PID: - if (frame_size > FRAMESIZE_VGA) { - frame_size = FRAMESIZE_VGA; - } - break; -#endif -#if CONFIG_NT99141_SUPPORT - case NT99141_PID: - if (frame_size > FRAMESIZE_HD) { - frame_size = FRAMESIZE_HD; - } - break; -#endif - default: - return ESP_ERR_CAMERA_NOT_SUPPORTED; - } - - s_state->width = resolution[frame_size].width; - s_state->height = resolution[frame_size].height; - - if (pix_format == PIXFORMAT_GRAYSCALE) { - s_state->fb_size = s_state->width * s_state->height; - if (s_state->sensor.id.PID == OV3660_PID || s_state->sensor.id.PID == OV5640_PID || s_state->sensor.id.PID == NT99141_PID) { - if (is_hs_mode()) { - s_state->sampling_mode = SM_0A00_0B00; - s_state->dma_filter = &dma_filter_yuyv_highspeed; - } else { - s_state->sampling_mode = SM_0A0B_0C0D; - s_state->dma_filter = &dma_filter_yuyv; - } - s_state->in_bytes_per_pixel = 1; // camera sends Y8 - } else { - if (is_hs_mode() && s_state->sensor.id.PID != OV7725_PID) { - s_state->sampling_mode = SM_0A00_0B00; - s_state->dma_filter = &dma_filter_grayscale_highspeed; - } else { - s_state->sampling_mode = SM_0A0B_0C0D; - s_state->dma_filter = &dma_filter_grayscale; - } - s_state->in_bytes_per_pixel = 2; // camera sends YU/YV - } - s_state->fb_bytes_per_pixel = 1; // frame buffer stores Y8 - } else if (pix_format == PIXFORMAT_YUV422 || pix_format == PIXFORMAT_RGB565) { - s_state->fb_size = s_state->width * s_state->height * 2; - if (is_hs_mode() && s_state->sensor.id.PID != OV7725_PID) { - if(s_state->sensor.id.PID == OV7670_PID) { - s_state->sampling_mode = SM_0A0B_0B0C; - }else{ - s_state->sampling_mode = SM_0A00_0B00; - } - s_state->dma_filter = &dma_filter_yuyv_highspeed; - } else { - s_state->sampling_mode = SM_0A0B_0C0D; - s_state->dma_filter = &dma_filter_yuyv; - } - s_state->in_bytes_per_pixel = 2; // camera sends YU/YV - s_state->fb_bytes_per_pixel = 2; // frame buffer stores YU/YV/RGB565 - } else if (pix_format == PIXFORMAT_RGB888) { - s_state->fb_size = s_state->width * s_state->height * 3; - if (is_hs_mode()) { - if(s_state->sensor.id.PID == OV7670_PID) { - s_state->sampling_mode = SM_0A0B_0B0C; - }else{ - s_state->sampling_mode = SM_0A00_0B00; - } - s_state->dma_filter = &dma_filter_rgb888_highspeed; - } else { - s_state->sampling_mode = SM_0A0B_0C0D; - s_state->dma_filter = &dma_filter_rgb888; - } - s_state->in_bytes_per_pixel = 2; // camera sends RGB565 - s_state->fb_bytes_per_pixel = 3; // frame buffer stores RGB888 - } else if (pix_format == PIXFORMAT_JPEG) { - if (s_state->sensor.id.PID != OV2640_PID && s_state->sensor.id.PID != OV3660_PID && s_state->sensor.id.PID != OV5640_PID && s_state->sensor.id.PID != NT99141_PID) { - ESP_LOGE(TAG, "JPEG format is only supported for ov2640, ov3660 and ov5640"); - err = ESP_ERR_NOT_SUPPORTED; - goto fail; - } - int qp = config->jpeg_quality; - int compression_ratio_bound = 1; - if (qp > 10) { - compression_ratio_bound = 16; - } else if (qp > 5) { - compression_ratio_bound = 10; - } else { - compression_ratio_bound = 4; - } - (*s_state->sensor.set_quality)(&s_state->sensor, qp); - s_state->in_bytes_per_pixel = 2; - s_state->fb_bytes_per_pixel = 2; - s_state->fb_size = (s_state->width * s_state->height * s_state->fb_bytes_per_pixel) / compression_ratio_bound; - s_state->dma_filter = &dma_filter_jpeg; - s_state->sampling_mode = SM_0A00_0B00; - } else { - ESP_LOGE(TAG, "Requested format is not supported"); - err = ESP_ERR_NOT_SUPPORTED; - goto fail; - } - - ESP_LOGD(TAG, "in_bpp: %d, fb_bpp: %d, fb_size: %d, mode: %d, width: %d height: %d", - s_state->in_bytes_per_pixel, s_state->fb_bytes_per_pixel, - s_state->fb_size, s_state->sampling_mode, - s_state->width, s_state->height); - - i2s_init(); - - err = dma_desc_init(); - if (err != ESP_OK) { - ESP_LOGE(TAG, "Failed to initialize I2S and DMA"); - goto fail; - } - - //s_state->fb_size = 75 * 1024; - err = camera_fb_init(s_state->config.fb_count); - if (err != ESP_OK) { - ESP_LOGE(TAG, "Failed to allocate frame buffer"); - goto fail; - } - - s_state->data_ready = xQueueCreate(16, sizeof(size_t)); - if (s_state->data_ready == NULL) { - ESP_LOGE(TAG, "Failed to dma queue"); - err = ESP_ERR_NO_MEM; - goto fail; - } - - if(s_state->config.fb_count == 1) { - s_state->frame_ready = xSemaphoreCreateBinary(); - if (s_state->frame_ready == NULL) { - ESP_LOGE(TAG, "Failed to create semaphore"); - err = ESP_ERR_NO_MEM; - goto fail; - } - } else { - s_state->fb_in = xQueueCreate(s_state->config.fb_count, sizeof(camera_fb_t *)); - s_state->fb_out = xQueueCreate(1, sizeof(camera_fb_t *)); - if (s_state->fb_in == NULL || s_state->fb_out == NULL) { - ESP_LOGE(TAG, "Failed to fb queues"); - err = ESP_ERR_NO_MEM; - goto fail; - } - } - - //ToDo: core affinity? -#if CONFIG_CAMERA_CORE0 - if (!xTaskCreatePinnedToCore(&dma_filter_task, "dma_filter", 4096, NULL, 10, &s_state->dma_filter_task, 0)) -#elif CONFIG_CAMERA_CORE1 - if (!xTaskCreatePinnedToCore(&dma_filter_task, "dma_filter", 4096, NULL, 10, &s_state->dma_filter_task, 1)) -#else - if (!xTaskCreate(&dma_filter_task, "dma_filter", 4096, NULL, 10, &s_state->dma_filter_task)) -#endif - { - ESP_LOGE(TAG, "Failed to create DMA filter task"); - err = ESP_ERR_NO_MEM; - goto fail; - } - - vsync_intr_disable(); - err = gpio_install_isr_service(ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_IRAM); - if (err != ESP_OK) { - if (err != ESP_ERR_INVALID_STATE) { - ESP_LOGE(TAG, "gpio_install_isr_service failed (%x)", err); - goto fail; - } - else { - ESP_LOGW(TAG, "gpio_install_isr_service already installed"); - } - } - err = gpio_isr_handler_add(s_state->config.pin_vsync, &vsync_isr, NULL); - if (err != ESP_OK) { - ESP_LOGE(TAG, "vsync_isr_handler_add failed (%x)", err); - goto fail; - } - - s_state->sensor.status.framesize = frame_size; - s_state->sensor.pixformat = pix_format; - ESP_LOGD(TAG, "Setting frame size to %dx%d", s_state->width, s_state->height); - if (s_state->sensor.set_framesize(&s_state->sensor, frame_size) != 0) { - ESP_LOGE(TAG, "Failed to set frame size"); - err = ESP_ERR_CAMERA_FAILED_TO_SET_FRAME_SIZE; - goto fail; - } - s_state->sensor.set_pixformat(&s_state->sensor, pix_format); - - if (s_state->sensor.id.PID == OV2640_PID) { - s_state->sensor.set_gainceiling(&s_state->sensor, GAINCEILING_2X); - s_state->sensor.set_bpc(&s_state->sensor, false); - s_state->sensor.set_wpc(&s_state->sensor, true); - s_state->sensor.set_lenc(&s_state->sensor, true); - } - - if (skip_frame()) { - err = ESP_ERR_CAMERA_FAILED_TO_SET_OUT_FORMAT; - goto fail; - } - //todo: for some reason the first set of the quality does not work. - if (pix_format == PIXFORMAT_JPEG) { - (*s_state->sensor.set_quality)(&s_state->sensor, config->jpeg_quality); - } - s_state->sensor.init_status(&s_state->sensor); - return ESP_OK; - -fail: - esp_camera_deinit(); - return err; -} - -esp_err_t esp_camera_init(const camera_config_t* config) -{ - camera_model_t camera_model = CAMERA_NONE; - i2s_gpio_init(config); - esp_err_t err = camera_probe(config, &camera_model); - if (err != ESP_OK) { - ESP_LOGE(TAG, "Camera probe failed with error 0x%x", err); - goto fail; - } - if (camera_model == CAMERA_OV7725) { - ESP_LOGI(TAG, "Detected OV7725 camera"); - if(config->pixel_format == PIXFORMAT_JPEG) { - ESP_LOGE(TAG, "Camera does not support JPEG"); - err = ESP_ERR_CAMERA_NOT_SUPPORTED; - goto fail; - } - } else if (camera_model == CAMERA_OV2640) { - ESP_LOGI(TAG, "Detected OV2640 camera"); - } else if (camera_model == CAMERA_OV3660) { - ESP_LOGI(TAG, "Detected OV3660 camera"); - } else if (camera_model == CAMERA_OV5640) { - ESP_LOGI(TAG, "Detected OV5640 camera"); - } else if (camera_model == CAMERA_OV7670) { - ESP_LOGI(TAG, "Detected OV7670 camera"); - } else if (camera_model == CAMERA_NT99141) { - ESP_LOGI(TAG, "Detected NT99141 camera"); - } else { - ESP_LOGI(TAG, "Camera not supported"); - err = ESP_ERR_CAMERA_NOT_SUPPORTED; - goto fail; - } - err = camera_init(config); - if (err != ESP_OK) { - ESP_LOGE(TAG, "Camera init failed with error 0x%x", err); - return err; - } - return ESP_OK; - -fail: - free(s_state); - s_state = NULL; - camera_disable_out_clock(); - return err; -} - -esp_err_t esp_camera_deinit() -{ - if (s_state == NULL) { - return ESP_ERR_INVALID_STATE; - } - if (s_state->dma_filter_task) { - vTaskDelete(s_state->dma_filter_task); - } - if (s_state->data_ready) { - vQueueDelete(s_state->data_ready); - } - if (s_state->fb_in) { - vQueueDelete(s_state->fb_in); - } - if (s_state->fb_out) { - vQueueDelete(s_state->fb_out); - } - if (s_state->frame_ready) { - vSemaphoreDelete(s_state->frame_ready); - } - gpio_isr_handler_remove(s_state->config.pin_vsync); - if (s_state->i2s_intr_handle) { - esp_intr_disable(s_state->i2s_intr_handle); - esp_intr_free(s_state->i2s_intr_handle); - } - dma_desc_deinit(); - camera_fb_deinit(); - - if(s_state->config.pin_xclk >= 0) { - camera_disable_out_clock(); - } - free(s_state); - s_state = NULL; - periph_module_disable(PERIPH_I2S0_MODULE); - return ESP_OK; -} - -#define FB_GET_TIMEOUT (4000 / portTICK_PERIOD_MS) - -camera_fb_t* esp_camera_fb_get() -{ - if (s_state == NULL) { - return NULL; - } - if(!I2S0.conf.rx_start) { - if(s_state->config.fb_count > 1) { - ESP_LOGD(TAG, "i2s_run"); - } - if (i2s_run() != 0) { - return NULL; - } - } - bool need_yield = false; - if (s_state->config.fb_count == 1) { - if (xSemaphoreTake(s_state->frame_ready, FB_GET_TIMEOUT) != pdTRUE){ - i2s_stop(&need_yield); - ESP_LOGE(TAG, "Failed to get the frame on time!"); - return NULL; - } - return (camera_fb_t*)s_state->fb; - } - camera_fb_int_t * fb = NULL; - if(s_state->fb_out) { - if (xQueueReceive(s_state->fb_out, &fb, FB_GET_TIMEOUT) != pdTRUE) { - i2s_stop(&need_yield); - ESP_LOGE(TAG, "Failed to get the frame on time!"); - return NULL; - } - } - return (camera_fb_t*)fb; -} - -void esp_camera_fb_return(camera_fb_t * fb) -{ - if(fb == NULL || s_state == NULL || s_state->config.fb_count == 1 || s_state->fb_in == NULL) { - return; - } - xQueueSend(s_state->fb_in, &fb, portMAX_DELAY); -} - -sensor_t * esp_camera_sensor_get() -{ - if (s_state == NULL) { - return NULL; - } - return &s_state->sensor; -} - -esp_err_t esp_camera_save_to_nvs(const char *key) -{ -#if ESP_IDF_VERSION_MAJOR > 3 - nvs_handle_t handle; -#else - nvs_handle handle; -#endif - esp_err_t ret = nvs_open(key,NVS_READWRITE,&handle); - - if (ret == ESP_OK) { - sensor_t *s = esp_camera_sensor_get(); - if (s != NULL) { - ret = nvs_set_blob(handle,CAMERA_SENSOR_NVS_KEY,&s->status,sizeof(camera_status_t)); - if (ret == ESP_OK) { - uint8_t pf = s->pixformat; - ret = nvs_set_u8(handle,CAMERA_PIXFORMAT_NVS_KEY,pf); - } - return ret; - } else { - return ESP_ERR_CAMERA_NOT_DETECTED; - } - nvs_close(handle); - return ret; - } else { - return ret; - } -} - -esp_err_t esp_camera_load_from_nvs(const char *key) -{ -#if ESP_IDF_VERSION_MAJOR > 3 - nvs_handle_t handle; -#else - nvs_handle handle; -#endif - uint8_t pf; - - esp_err_t ret = nvs_open(key,NVS_READWRITE,&handle); - - if (ret == ESP_OK) { - sensor_t *s = esp_camera_sensor_get(); - camera_status_t st; - if (s != NULL) { - size_t size = sizeof(camera_status_t); - ret = nvs_get_blob(handle,CAMERA_SENSOR_NVS_KEY,&st,&size); - if (ret == ESP_OK) { - s->set_ae_level(s,st.ae_level); - s->set_aec2(s,st.aec2); - s->set_aec_value(s,st.aec_value); - s->set_agc_gain(s,st.agc_gain); - s->set_awb_gain(s,st.awb_gain); - s->set_bpc(s,st.bpc); - s->set_brightness(s,st.brightness); - s->set_colorbar(s,st.colorbar); - s->set_contrast(s,st.contrast); - s->set_dcw(s,st.dcw); - s->set_denoise(s,st.denoise); - s->set_exposure_ctrl(s,st.aec); - s->set_framesize(s,st.framesize); - s->set_gain_ctrl(s,st.agc); - s->set_gainceiling(s,st.gainceiling); - s->set_hmirror(s,st.hmirror); - s->set_lenc(s,st.lenc); - s->set_quality(s,st.quality); - s->set_raw_gma(s,st.raw_gma); - s->set_saturation(s,st.saturation); - s->set_sharpness(s,st.sharpness); - s->set_special_effect(s,st.special_effect); - s->set_vflip(s,st.vflip); - s->set_wb_mode(s,st.wb_mode); - s->set_whitebal(s,st.awb); - s->set_wpc(s,st.wpc); - } - ret = nvs_get_u8(handle,CAMERA_PIXFORMAT_NVS_KEY,&pf); - if (ret == ESP_OK) { - s->set_pixformat(s,pf); - } - } else { - return ESP_ERR_CAMERA_NOT_DETECTED; - } - nvs_close(handle); - return ret; - } else { - ESP_LOGW(TAG,"Error (%d) opening nvs key \"%s\"",ret,key); - return ret; - } -} diff --git a/code/components/esp32-camera-master/driver/esp_camera.c b/code/components/esp32-camera-master/driver/esp_camera.c new file mode 100644 index 00000000..9ae1b56c --- /dev/null +++ b/code/components/esp32-camera-master/driver/esp_camera.c @@ -0,0 +1,416 @@ +// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +#include +#include +#include +#include "time.h" +#include "sys/time.h" +#include "freertos/FreeRTOS.h" +#include "freertos/task.h" +#include "driver/gpio.h" +#include "esp_system.h" +#include "nvs_flash.h" +#include "nvs.h" +#include "sensor.h" +#include "sccb.h" +#include "cam_hal.h" +#include "esp_camera.h" +#include "xclk.h" +#if CONFIG_OV2640_SUPPORT +#include "ov2640.h" +#endif +#if CONFIG_OV7725_SUPPORT +#include "ov7725.h" +#endif +#if CONFIG_OV3660_SUPPORT +#include "ov3660.h" +#endif +#if CONFIG_OV5640_SUPPORT +#include "ov5640.h" +#endif +#if CONFIG_NT99141_SUPPORT +#include "nt99141.h" +#endif +#if CONFIG_OV7670_SUPPORT +#include "ov7670.h" +#endif +#if CONFIG_GC2145_SUPPORT +#include "gc2145.h" +#endif +#if CONFIG_GC032A_SUPPORT +#include "gc032a.h" +#endif +#if CONFIG_GC0308_SUPPORT +#include "gc0308.h" +#endif + + +#if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) +#include "esp32-hal-log.h" +#define TAG "" +#else +#include "esp_log.h" +static const char *TAG = "camera"; +#endif + +typedef struct { + sensor_t sensor; + camera_fb_t fb; +} camera_state_t; + +static const char *CAMERA_SENSOR_NVS_KEY = "sensor"; +static const char *CAMERA_PIXFORMAT_NVS_KEY = "pixformat"; +static camera_state_t *s_state = NULL; + +#if CONFIG_IDF_TARGET_ESP32S3 // LCD_CAM module of ESP32-S3 will generate xclk +#define CAMERA_ENABLE_OUT_CLOCK(v) +#define CAMERA_DISABLE_OUT_CLOCK() +#else +#define CAMERA_ENABLE_OUT_CLOCK(v) camera_enable_out_clock((v)) +#define CAMERA_DISABLE_OUT_CLOCK() camera_disable_out_clock() +#endif + +typedef struct { + int (*detect)(int slv_addr, sensor_id_t *id); + int (*init)(sensor_t *sensor); +} sensor_func_t; + +static const sensor_func_t g_sensors[] = { +#if CONFIG_OV7725_SUPPORT + {ov7725_detect, ov7725_init}, +#endif +#if CONFIG_OV7670_SUPPORT + {ov7670_detect, ov7670_init}, +#endif +#if CONFIG_OV2640_SUPPORT + {ov2640_detect, ov2640_init}, +#endif +#if CONFIG_OV3660_SUPPORT + {ov3660_detect, ov3660_init}, +#endif +#if CONFIG_OV5640_SUPPORT + {ov5640_detect, ov5640_init}, +#endif +#if CONFIG_NT99141_SUPPORT + {nt99141_detect, nt99141_init}, +#endif +#if CONFIG_GC2145_SUPPORT + {gc2145_detect, gc2145_init}, +#endif +#if CONFIG_GC032A_SUPPORT + {gc032a_detect, gc032a_init}, +#endif +#if CONFIG_GC0308_SUPPORT + {gc0308_detect, gc0308_init}, +#endif +}; + +static esp_err_t camera_probe(const camera_config_t *config, camera_model_t *out_camera_model) +{ + *out_camera_model = CAMERA_NONE; + if (s_state != NULL) { + return ESP_ERR_INVALID_STATE; + } + + s_state = (camera_state_t *) calloc(sizeof(camera_state_t), 1); + if (!s_state) { + return ESP_ERR_NO_MEM; + } + + if (config->pin_xclk >= 0) { + ESP_LOGD(TAG, "Enabling XCLK output"); + CAMERA_ENABLE_OUT_CLOCK(config); + } + + if (config->pin_sscb_sda != -1) { + ESP_LOGD(TAG, "Initializing SSCB"); + SCCB_Init(config->pin_sscb_sda, config->pin_sscb_scl); + } + + if (config->pin_pwdn >= 0) { + ESP_LOGD(TAG, "Resetting camera by power down line"); + gpio_config_t conf = { 0 }; + conf.pin_bit_mask = 1LL << config->pin_pwdn; + conf.mode = GPIO_MODE_OUTPUT; + gpio_config(&conf); + + // carefull, logic is inverted compared to reset pin + gpio_set_level(config->pin_pwdn, 1); + vTaskDelay(10 / portTICK_PERIOD_MS); + gpio_set_level(config->pin_pwdn, 0); + vTaskDelay(10 / portTICK_PERIOD_MS); + } + + if (config->pin_reset >= 0) { + ESP_LOGD(TAG, "Resetting camera"); + gpio_config_t conf = { 0 }; + conf.pin_bit_mask = 1LL << config->pin_reset; + conf.mode = GPIO_MODE_OUTPUT; + gpio_config(&conf); + + gpio_set_level(config->pin_reset, 0); + vTaskDelay(10 / portTICK_PERIOD_MS); + gpio_set_level(config->pin_reset, 1); + vTaskDelay(10 / portTICK_PERIOD_MS); + } + + + ESP_LOGD(TAG, "Searching for camera address"); + vTaskDelay(10 / portTICK_PERIOD_MS); + + uint8_t slv_addr = SCCB_Probe(); + + if (slv_addr == 0) { + CAMERA_DISABLE_OUT_CLOCK(); + return ESP_ERR_NOT_FOUND; + } + + ESP_LOGI(TAG, "Detected camera at address=0x%02x", slv_addr); + s_state->sensor.slv_addr = slv_addr; + s_state->sensor.xclk_freq_hz = config->xclk_freq_hz; + + /** + * Read sensor ID and then initialize sensor + * Attention: Some sensors have the same SCCB address. Therefore, several attempts may be made in the detection process + */ + sensor_id_t *id = &s_state->sensor.id; + for (size_t i = 0; i < sizeof(g_sensors) / sizeof(sensor_func_t); i++) { + if (g_sensors[i].detect(slv_addr, id)) { + camera_sensor_info_t *info = esp_camera_sensor_get_info(id); + if (NULL != info) { + *out_camera_model = info->model; + ESP_LOGI(TAG, "Detected %s camera", info->name); + g_sensors[i].init(&s_state->sensor); + break; + } + } + } + + if (CAMERA_NONE == *out_camera_model) { //If no supported sensors are detected + CAMERA_DISABLE_OUT_CLOCK(); + ESP_LOGE(TAG, "Detected camera not supported."); + return ESP_ERR_NOT_SUPPORTED; + } + + ESP_LOGI(TAG, "Camera PID=0x%02x VER=0x%02x MIDL=0x%02x MIDH=0x%02x", + id->PID, id->VER, id->MIDH, id->MIDL); + + ESP_LOGD(TAG, "Doing SW reset of sensor"); + vTaskDelay(10 / portTICK_PERIOD_MS); + s_state->sensor.reset(&s_state->sensor); + + return ESP_OK; +} + +esp_err_t esp_camera_init(const camera_config_t *config) +{ + esp_err_t err; + err = cam_init(config); + if (err != ESP_OK) { + ESP_LOGE(TAG, "Camera init failed with error 0x%x", err); + return err; + } + + camera_model_t camera_model = CAMERA_NONE; + err = camera_probe(config, &camera_model); + if (err != ESP_OK) { + ESP_LOGE(TAG, "Camera probe failed with error 0x%x(%s)", err, esp_err_to_name(err)); + goto fail; + } + + framesize_t frame_size = (framesize_t) config->frame_size; + pixformat_t pix_format = (pixformat_t) config->pixel_format; + + if (PIXFORMAT_JPEG == pix_format && (!camera_sensor[camera_model].support_jpeg)) { + ESP_LOGE(TAG, "JPEG format is not supported on this sensor"); + err = ESP_ERR_NOT_SUPPORTED; + goto fail; + } + + if (frame_size > camera_sensor[camera_model].max_size) { + ESP_LOGW(TAG, "The frame size exceeds the maximum for this sensor, it will be forced to the maximum possible value"); + frame_size = camera_sensor[camera_model].max_size; + } + + err = cam_config(config, frame_size, s_state->sensor.id.PID); + if (err != ESP_OK) { + ESP_LOGE(TAG, "Camera config failed with error 0x%x", err); + goto fail; + } + + s_state->sensor.status.framesize = frame_size; + s_state->sensor.pixformat = pix_format; + ESP_LOGD(TAG, "Setting frame size to %dx%d", resolution[frame_size].width, resolution[frame_size].height); + if (s_state->sensor.set_framesize(&s_state->sensor, frame_size) != 0) { + ESP_LOGE(TAG, "Failed to set frame size"); + err = ESP_ERR_CAMERA_FAILED_TO_SET_FRAME_SIZE; + goto fail; + } + s_state->sensor.set_pixformat(&s_state->sensor, pix_format); + + if (s_state->sensor.id.PID == OV2640_PID) { + s_state->sensor.set_gainceiling(&s_state->sensor, GAINCEILING_2X); + s_state->sensor.set_bpc(&s_state->sensor, false); + s_state->sensor.set_wpc(&s_state->sensor, true); + s_state->sensor.set_lenc(&s_state->sensor, true); + } + + if (pix_format == PIXFORMAT_JPEG) { + s_state->sensor.set_quality(&s_state->sensor, config->jpeg_quality); + } + s_state->sensor.init_status(&s_state->sensor); + + cam_start(); + + return ESP_OK; + +fail: + esp_camera_deinit(); + return err; +} + +esp_err_t esp_camera_deinit() +{ + esp_err_t ret = cam_deinit(); + CAMERA_DISABLE_OUT_CLOCK(); + if (s_state) { + SCCB_Deinit(); + + free(s_state); + s_state = NULL; + } + + return ret; +} + +#define FB_GET_TIMEOUT (4000 / portTICK_PERIOD_MS) + +camera_fb_t *esp_camera_fb_get() +{ + if (s_state == NULL) { + return NULL; + } + camera_fb_t *fb = cam_take(FB_GET_TIMEOUT); + //set the frame properties + if (fb) { + fb->width = resolution[s_state->sensor.status.framesize].width; + fb->height = resolution[s_state->sensor.status.framesize].height; + fb->format = s_state->sensor.pixformat; + } + return fb; +} + +void esp_camera_fb_return(camera_fb_t *fb) +{ + if (s_state == NULL) { + return; + } + cam_give(fb); +} + +sensor_t *esp_camera_sensor_get() +{ + if (s_state == NULL) { + return NULL; + } + return &s_state->sensor; +} + +esp_err_t esp_camera_save_to_nvs(const char *key) +{ +#if ESP_IDF_VERSION_MAJOR > 3 + nvs_handle_t handle; +#else + nvs_handle handle; +#endif + esp_err_t ret = nvs_open(key, NVS_READWRITE, &handle); + + if (ret == ESP_OK) { + sensor_t *s = esp_camera_sensor_get(); + if (s != NULL) { + ret = nvs_set_blob(handle, CAMERA_SENSOR_NVS_KEY, &s->status, sizeof(camera_status_t)); + if (ret == ESP_OK) { + uint8_t pf = s->pixformat; + ret = nvs_set_u8(handle, CAMERA_PIXFORMAT_NVS_KEY, pf); + } + return ret; + } else { + return ESP_ERR_CAMERA_NOT_DETECTED; + } + nvs_close(handle); + return ret; + } else { + return ret; + } +} + +esp_err_t esp_camera_load_from_nvs(const char *key) +{ +#if ESP_IDF_VERSION_MAJOR > 3 + nvs_handle_t handle; +#else + nvs_handle handle; +#endif + uint8_t pf; + + esp_err_t ret = nvs_open(key, NVS_READWRITE, &handle); + + if (ret == ESP_OK) { + sensor_t *s = esp_camera_sensor_get(); + camera_status_t st; + if (s != NULL) { + size_t size = sizeof(camera_status_t); + ret = nvs_get_blob(handle, CAMERA_SENSOR_NVS_KEY, &st, &size); + if (ret == ESP_OK) { + s->set_ae_level(s, st.ae_level); + s->set_aec2(s, st.aec2); + s->set_aec_value(s, st.aec_value); + s->set_agc_gain(s, st.agc_gain); + s->set_awb_gain(s, st.awb_gain); + s->set_bpc(s, st.bpc); + s->set_brightness(s, st.brightness); + s->set_colorbar(s, st.colorbar); + s->set_contrast(s, st.contrast); + s->set_dcw(s, st.dcw); + s->set_denoise(s, st.denoise); + s->set_exposure_ctrl(s, st.aec); + s->set_framesize(s, st.framesize); + s->set_gain_ctrl(s, st.agc); + s->set_gainceiling(s, st.gainceiling); + s->set_hmirror(s, st.hmirror); + s->set_lenc(s, st.lenc); + s->set_quality(s, st.quality); + s->set_raw_gma(s, st.raw_gma); + s->set_saturation(s, st.saturation); + s->set_sharpness(s, st.sharpness); + s->set_special_effect(s, st.special_effect); + s->set_vflip(s, st.vflip); + s->set_wb_mode(s, st.wb_mode); + s->set_whitebal(s, st.awb); + s->set_wpc(s, st.wpc); + } + ret = nvs_get_u8(handle, CAMERA_PIXFORMAT_NVS_KEY, &pf); + if (ret == ESP_OK) { + s->set_pixformat(s, pf); + } + } else { + return ESP_ERR_CAMERA_NOT_DETECTED; + } + nvs_close(handle); + return ret; + } else { + ESP_LOGW(TAG, "Error (%d) opening nvs key \"%s\"", ret, key); + return ret; + } +} diff --git a/code/components/esp32-camera-master/driver/include/esp_camera.h b/code/components/esp32-camera-master/driver/include/esp_camera.h index dadd0c09..b6047d31 100644 --- a/code/components/esp32-camera-master/driver/include/esp_camera.h +++ b/code/components/esp32-camera-master/driver/include/esp_camera.h @@ -38,7 +38,8 @@ .pixel_format = PIXFORMAT_JPEG, .frame_size = FRAMESIZE_SVGA, .jpeg_quality = 10, - .fb_count = 2 + .fb_count = 2, + .grab_mode = CAMERA_GRAB_WHEN_EMPTY }; esp_err_t camera_example_init(){ @@ -74,6 +75,22 @@ extern "C" { #endif +/** + * @brief Configuration structure for camera initialization + */ +typedef enum { + CAMERA_GRAB_WHEN_EMPTY, /*!< Fills buffers when they are empty. Less resources but first 'fb_count' frames might be old */ + CAMERA_GRAB_LATEST /*!< Except when 1 frame buffer is used, queue will always contain the last 'fb_count' frames */ +} camera_grab_mode_t; + +/** + * @brief Camera frame buffer location + */ +typedef enum { + CAMERA_FB_IN_PSRAM, /*!< Frame buffer is placed in external PSRAM */ + CAMERA_FB_IN_DRAM /*!< Frame buffer is placed in internal DRAM */ +} camera_fb_location_t; + /** * @brief Configuration structure for camera initialization */ @@ -95,7 +112,7 @@ typedef struct { int pin_href; /*!< GPIO pin for camera HREF line */ int pin_pclk; /*!< GPIO pin for camera PCLK line */ - int xclk_freq_hz; /*!< Frequency of XCLK signal, in Hz. Either 20KHz or 10KHz for OV2640 double FPS (Experimental) */ + int xclk_freq_hz; /*!< Frequency of XCLK signal, in Hz. EXPERIMENTAL: Set to 16MHz on ESP32-S2 or ESP32-S3 to enable EDMA mode */ ledc_timer_t ledc_timer; /*!< LEDC timer to be used for generating XCLK */ ledc_channel_t ledc_channel; /*!< LEDC channel to be used for generating XCLK */ @@ -105,6 +122,8 @@ typedef struct { int jpeg_quality; /*!< Quality of JPEG output. 0-63 lower means higher quality */ size_t fb_count; /*!< Number of frame buffers to be allocated. If more than one, then each frame will be acquired (double speed) */ + camera_fb_location_t fb_location; /*!< The location where the frame buffer will be allocated */ + camera_grab_mode_t grab_mode; /*!< When buffers should be filled */ } camera_config_t; /** diff --git a/code/components/esp32-camera-master/driver/include/sensor.h b/code/components/esp32-camera-master/driver/include/sensor.h index ad6cd890..1f99c154 100644 --- a/code/components/esp32-camera-master/driver/include/sensor.h +++ b/code/components/esp32-camera-master/driver/include/sensor.h @@ -11,13 +11,48 @@ #include #include -#define NT99141_PID (0x14) -#define OV9650_PID (0x96) -#define OV7725_PID (0x77) -#define OV2640_PID (0x26) -#define OV3660_PID (0x36) -#define OV5640_PID (0x56) -#define OV7670_PID (0x76) +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + OV9650_PID = 0x96, + OV7725_PID = 0x77, + OV2640_PID = 0x26, + OV3660_PID = 0x3660, + OV5640_PID = 0x5640, + OV7670_PID = 0x76, + NT99141_PID = 0x1410, + GC2145_PID = 0x2145, + GC032A_PID = 0x232a, + GC0308_PID = 0x9b, +} camera_pid_t; + +typedef enum { + CAMERA_OV7725, + CAMERA_OV2640, + CAMERA_OV3660, + CAMERA_OV5640, + CAMERA_OV7670, + CAMERA_NT99141, + CAMERA_GC2145, + CAMERA_GC032A, + CAMERA_GC0308, + CAMERA_MODEL_MAX, + CAMERA_NONE, +} camera_model_t; + +typedef enum { + OV2640_SCCB_ADDR = 0x30,// 0x60 >> 1 + OV5640_SCCB_ADDR = 0x3C,// 0x78 >> 1 + OV3660_SCCB_ADDR = 0x3C,// 0x78 >> 1 + OV7725_SCCB_ADDR = 0x21,// 0x42 >> 1 + OV7670_SCCB_ADDR = 0x21,// 0x42 >> 1 + NT99141_SCCB_ADDR = 0x2A,// 0x54 >> 1 + GC2145_SCCB_ADDR = 0x3C,// 0x78 >> 1 + GC032A_SCCB_ADDR = 0x21,// 0x42 >> 1 + GC0308_SCCB_ADDR = 0x21,// 0x42 >> 1 +} camera_sccb_addr_t; typedef enum { PIXFORMAT_RGB565, // 2BPP/RGB565 @@ -58,6 +93,15 @@ typedef enum { FRAMESIZE_INVALID } framesize_t; +typedef struct { + const camera_model_t model; + const char *name; + const camera_sccb_addr_t sccb_addr; + const camera_pid_t pid; + const framesize_t max_size; + const bool support_jpeg; +} camera_sensor_info_t; + typedef enum { ASPECT_RATIO_4X3, ASPECT_RATIO_3X2, @@ -101,11 +145,13 @@ typedef struct { // Resolution table (in sensor.c) extern const resolution_info_t resolution[]; +// camera sensor table (in sensor.c) +extern const camera_sensor_info_t camera_sensor[]; typedef struct { uint8_t MIDH; uint8_t MIDL; - uint8_t PID; + uint16_t PID; uint8_t VER; } sensor_id_t; @@ -190,4 +236,10 @@ typedef struct _sensor { int (*set_xclk) (sensor_t *sensor, int timer, int xclk); } sensor_t; +camera_sensor_info_t *esp_camera_sensor_get_info(sensor_id_t *id); + +#ifdef __cplusplus +} +#endif + #endif /* __SENSOR_H__ */ diff --git a/code/components/esp32-camera-master/driver/private_include/cam_hal.h b/code/components/esp32-camera-master/driver/private_include/cam_hal.h new file mode 100644 index 00000000..c8e38ed4 --- /dev/null +++ b/code/components/esp32-camera-master/driver/private_include/cam_hal.h @@ -0,0 +1,60 @@ +// Copyright 2010-2020 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include "esp_camera.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Uninitialize the lcd_cam module + * + * @param handle Provide handle pointer to release resources + * + * @return + * - ESP_OK Success + * - ESP_FAIL Uninitialize fail + */ +esp_err_t cam_deinit(void); + +/** + * @brief Initialize the lcd_cam module + * + * @param config Configurations - see lcd_cam_config_t struct + * + * @return + * - ESP_OK Success + * - ESP_ERR_INVALID_ARG Parameter error + * - ESP_ERR_NO_MEM No memory to initialize lcd_cam + * - ESP_FAIL Initialize fail + */ +esp_err_t cam_init(const camera_config_t *config); + +esp_err_t cam_config(const camera_config_t *config, framesize_t frame_size, uint16_t sensor_pid); + +void cam_stop(void); + +void cam_start(void); + +camera_fb_t *cam_take(TickType_t timeout); + +void cam_give(camera_fb_t *dma_buffer); + +#ifdef __cplusplus +} +#endif diff --git a/code/components/esp32-camera-master/driver/private_include/camera_common.h b/code/components/esp32-camera-master/driver/private_include/camera_common.h deleted file mode 100644 index 8a2db5ce..00000000 --- a/code/components/esp32-camera-master/driver/private_include/camera_common.h +++ /dev/null @@ -1,49 +0,0 @@ -#pragma once - -#include -#include -#include -#include "esp_err.h" -#include "esp_intr_alloc.h" -#include "freertos/FreeRTOS.h" -#include "freertos/semphr.h" -#include "freertos/task.h" -#include "esp_camera.h" -#include "sensor.h" - -#include "esp_system.h" -#if ESP_IDF_VERSION_MAJOR >= 4 // IDF 4+ -#if CONFIG_IDF_TARGET_ESP32 // ESP32/PICO-D4 -#include "esp32/rom/lldesc.h" -#else -#error Target CONFIG_IDF_TARGET is not supported -#endif -#else // ESP32 Before IDF 4.0 -#include "rom/lldesc.h" -#endif - -typedef union { - struct { - uint8_t sample2; - uint8_t unused2; - uint8_t sample1; - uint8_t unused1; - }; - uint32_t val; -} dma_elem_t; - -typedef enum { - /* camera sends byte sequence: s1, s2, s3, s4, ... - * fifo receives: 00 s1 00 s2, 00 s2 00 s3, 00 s3 00 s4, ... - */ - SM_0A0B_0B0C = 0, - /* camera sends byte sequence: s1, s2, s3, s4, ... - * fifo receives: 00 s1 00 s2, 00 s3 00 s4, ... - */ - SM_0A0B_0C0D = 1, - /* camera sends byte sequence: s1, s2, s3, s4, ... - * fifo receives: 00 s1 00 00, 00 s2 00 00, 00 s3 00 00, ... - */ - SM_0A00_0B00 = 3, -} i2s_sampling_mode_t; - diff --git a/code/components/esp32-camera-master/driver/private_include/sccb.h b/code/components/esp32-camera-master/driver/private_include/sccb.h index 4d5b5b42..ace081a4 100644 --- a/code/components/esp32-camera-master/driver/private_include/sccb.h +++ b/code/components/esp32-camera-master/driver/private_include/sccb.h @@ -10,6 +10,7 @@ #define __SCCB_H__ #include int SCCB_Init(int pin_sda, int pin_scl); +int SCCB_Deinit(void); uint8_t SCCB_Probe(); uint8_t SCCB_Read(uint8_t slv_addr, uint8_t reg); uint8_t SCCB_Write(uint8_t slv_addr, uint8_t reg, uint8_t data); diff --git a/code/components/esp32-camera-master/driver/private_include/xclk.h b/code/components/esp32-camera-master/driver/private_include/xclk.h index 15ed736e..3d721a61 100644 --- a/code/components/esp32-camera-master/driver/private_include/xclk.h +++ b/code/components/esp32-camera-master/driver/private_include/xclk.h @@ -1,6 +1,8 @@ #pragma once -#include "camera_common.h" +#include "esp_system.h" + +esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz); esp_err_t camera_enable_out_clock(); diff --git a/code/components/esp32-camera-master/driver/sccb.c b/code/components/esp32-camera-master/driver/sccb.c index cb615bbc..1a2c56e2 100644 --- a/code/components/esp32-camera-master/driver/sccb.c +++ b/code/components/esp32-camera-master/driver/sccb.c @@ -11,6 +11,7 @@ #include #include #include "sccb.h" +#include "sensor.h" #include #include "sdkconfig.h" #if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) @@ -36,12 +37,10 @@ const int SCCB_I2C_PORT = 1; #else const int SCCB_I2C_PORT = 0; #endif -static uint8_t ESP_SLAVE_ADDR = 0x3c; int SCCB_Init(int pin_sda, int pin_scl) { - ESP_LOGI(TAG, "pin_sda %d pin_scl %d\n", pin_sda, pin_scl); - //log_i("SCCB_Init start"); + ESP_LOGI(TAG, "pin_sda %d pin_scl %d", pin_sda, pin_scl); i2c_config_t conf; memset(&conf, 0, sizeof(i2c_config_t)); conf.mode = I2C_MODE_MASTER; @@ -56,10 +55,30 @@ int SCCB_Init(int pin_sda, int pin_scl) return 0; } -uint8_t SCCB_Probe() +int SCCB_Deinit(void) +{ + return i2c_driver_delete(SCCB_I2C_PORT); +} + +uint8_t SCCB_Probe(void) { uint8_t slave_addr = 0x0; - while(slave_addr < 0x7f) { + // for (size_t i = 1; i < 0x80; i++) { + // i2c_cmd_handle_t cmd = i2c_cmd_link_create(); + // i2c_master_start(cmd); + // i2c_master_write_byte(cmd, ( i << 1 ) | WRITE_BIT, ACK_CHECK_EN); + // i2c_master_stop(cmd); + // esp_err_t ret = i2c_master_cmd_begin(SCCB_I2C_PORT, cmd, 1000 / portTICK_RATE_MS); + // i2c_cmd_link_delete(cmd); + // if( ret == ESP_OK) { + // ESP_LOGW(TAG, "Found I2C Device at 0x%02X", i); + // } + // } + for (size_t i = 0; i < CAMERA_MODEL_MAX; i++) { + if (slave_addr == camera_sensor[i].sccb_addr) { + continue; + } + slave_addr = camera_sensor[i].sccb_addr; i2c_cmd_handle_t cmd = i2c_cmd_link_create(); i2c_master_start(cmd); i2c_master_write_byte(cmd, ( slave_addr << 1 ) | WRITE_BIT, ACK_CHECK_EN); @@ -67,12 +86,10 @@ uint8_t SCCB_Probe() esp_err_t ret = i2c_master_cmd_begin(SCCB_I2C_PORT, cmd, 1000 / portTICK_RATE_MS); i2c_cmd_link_delete(cmd); if( ret == ESP_OK) { - ESP_SLAVE_ADDR = slave_addr; - return ESP_SLAVE_ADDR; + return slave_addr; } - slave_addr++; } - return ESP_SLAVE_ADDR; + return 0; } uint8_t SCCB_Read(uint8_t slv_addr, uint8_t reg) diff --git a/code/components/esp32-camera-master/driver/sensor.c b/code/components/esp32-camera-master/driver/sensor.c index 2e6d1110..7ebd7af2 100644 --- a/code/components/esp32-camera-master/driver/sensor.c +++ b/code/components/esp32-camera-master/driver/sensor.c @@ -1,5 +1,19 @@ +#include #include "sensor.h" +const camera_sensor_info_t camera_sensor[CAMERA_MODEL_MAX] = { + // The sequence must be consistent with camera_model_t + {CAMERA_OV7725, "OV7725", OV7725_SCCB_ADDR, OV7725_PID, FRAMESIZE_VGA, false}, + {CAMERA_OV2640, "OV2640", OV2640_SCCB_ADDR, OV2640_PID, FRAMESIZE_UXGA, true}, + {CAMERA_OV3660, "OV3660", OV3660_SCCB_ADDR, OV3660_PID, FRAMESIZE_QXGA, true}, + {CAMERA_OV5640, "OV5640", OV5640_SCCB_ADDR, OV5640_PID, FRAMESIZE_QSXGA, true}, + {CAMERA_OV7670, "OV7670", OV7670_SCCB_ADDR, OV7670_PID, FRAMESIZE_VGA, false}, + {CAMERA_NT99141, "NT99141", NT99141_SCCB_ADDR, NT99141_PID, FRAMESIZE_HD, true}, + {CAMERA_GC2145, "GC2145", GC2145_SCCB_ADDR, GC2145_PID, FRAMESIZE_UXGA, false}, + {CAMERA_GC032A, "GC032A", GC032A_SCCB_ADDR, GC032A_PID, FRAMESIZE_VGA, false}, + {CAMERA_GC0308, "GC0308", GC0308_SCCB_ADDR, GC0308_PID, FRAMESIZE_VGA, false}, +}; + const resolution_info_t resolution[FRAMESIZE_INVALID] = { { 96, 96, ASPECT_RATIO_1X1 }, /* 96x96 */ { 160, 120, ASPECT_RATIO_4X3 }, /* QQVGA */ @@ -26,3 +40,13 @@ const resolution_info_t resolution[FRAMESIZE_INVALID] = { { 1088, 1920, ASPECT_RATIO_9X16 }, /* Portrait FHD */ { 2560, 1920, ASPECT_RATIO_4X3 }, /* QSXGA */ }; + +camera_sensor_info_t *esp_camera_sensor_get_info(sensor_id_t *id) +{ + for (int i = 0; i < CAMERA_MODEL_MAX; i++) { + if (id->PID == camera_sensor[i].pid) { + return (camera_sensor_info_t *)&camera_sensor[i]; + } + } + return NULL; +} diff --git a/code/components/esp32-camera-master/examples/CMakeLists.txt b/code/components/esp32-camera-master/examples/CMakeLists.txt new file mode 100644 index 00000000..0a039688 --- /dev/null +++ b/code/components/esp32-camera-master/examples/CMakeLists.txt @@ -0,0 +1,9 @@ +# The following lines of boilerplate have to be in your project's +# CMakeLists in this exact order for cmake to work correctly +cmake_minimum_required(VERSION 3.5) + +set(EXTRA_COMPONENT_DIRS "../") + +add_compile_options(-fdiagnostics-color=always) +include($ENV{IDF_PATH}/tools/cmake/project.cmake) +project(camera_example) \ No newline at end of file diff --git a/code/components/esp32-camera-master/examples/main/CMakeLists.txt b/code/components/esp32-camera-master/examples/main/CMakeLists.txt new file mode 100644 index 00000000..1735fb18 --- /dev/null +++ b/code/components/esp32-camera-master/examples/main/CMakeLists.txt @@ -0,0 +1,3 @@ +set(COMPONENT_SRCS take_picture.c) +set(COMPONENT_ADD_INCLUDEDIRS .) +register_component() \ No newline at end of file diff --git a/code/components/esp32-camera-master/examples/main/component.mk b/code/components/esp32-camera-master/examples/main/component.mk new file mode 100644 index 00000000..0b9d7585 --- /dev/null +++ b/code/components/esp32-camera-master/examples/main/component.mk @@ -0,0 +1,5 @@ +# +# "main" pseudo-component makefile. +# +# (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.) + diff --git a/code/components/esp32-camera-master/examples/take_picture.c b/code/components/esp32-camera-master/examples/main/take_picture.c similarity index 89% rename from code/components/esp32-camera-master/examples/take_picture.c rename to code/components/esp32-camera-master/examples/main/take_picture.c index 8a22e8c3..1cbad908 100644 --- a/code/components/esp32-camera-master/examples/take_picture.c +++ b/code/components/esp32-camera-master/examples/main/take_picture.c @@ -29,7 +29,6 @@ // ================================ CODE ====================================== -#include #include #include #include @@ -41,6 +40,8 @@ #include "esp_camera.h" +#define BOARD_WROVER_KIT 1 + // WROVER-KIT PIN Map #ifdef BOARD_WROVER_KIT @@ -113,11 +114,12 @@ static camera_config_t camera_config = { .ledc_timer = LEDC_TIMER_0, .ledc_channel = LEDC_CHANNEL_0, - .pixel_format = PIXFORMAT_JPEG, //YUV422,GRAYSCALE,RGB565,JPEG - .frame_size = FRAMESIZE_VGA, //QQVGA-UXGA Do not use sizes above QVGA when not JPEG + .pixel_format = PIXFORMAT_RGB565, //YUV422,GRAYSCALE,RGB565,JPEG + .frame_size = FRAMESIZE_QVGA, //QQVGA-UXGA Do not use sizes above QVGA when not JPEG .jpeg_quality = 12, //0-63 lower number means higher quality - .fb_count = 1 //if more than one, i2s runs in continuous mode. Use only with JPEG + .fb_count = 1, //if more than one, i2s runs in continuous mode. Use only with JPEG + .grab_mode = CAMERA_GRAB_WHEN_EMPTY, }; static esp_err_t init_camera() @@ -135,7 +137,9 @@ static esp_err_t init_camera() void app_main() { - init_camera(); + if(ESP_OK != init_camera()) { + return; + } while (1) { @@ -144,7 +148,8 @@ void app_main() // use pic->buf to access the image ESP_LOGI(TAG, "Picture taken! Its size was: %zu bytes", pic->len); + esp_camera_fb_return(pic); vTaskDelay(5000 / portTICK_RATE_MS); } -} \ No newline at end of file +} diff --git a/code/components/esp32-camera-master/examples/sdkconfig.defaults b/code/components/esp32-camera-master/examples/sdkconfig.defaults new file mode 100644 index 00000000..e5ac4557 --- /dev/null +++ b/code/components/esp32-camera-master/examples/sdkconfig.defaults @@ -0,0 +1,17 @@ +CONFIG_ESP32_DEFAULT_CPU_FREQ_240=y +CONFIG_ESP32S2_DEFAULT_CPU_FREQ_240=y +CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240=y + +CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y +CONFIG_PARTITION_TABLE_OFFSET=0x10000 + +CONFIG_FREERTOS_HZ=1000 +CONFIG_ESPTOOLPY_FLASHFREQ_80M=y +CONFIG_ESPTOOLPY_FLASHMODE_QIO=y + +CONFIG_SPIRAM_SUPPORT=y +CONFIG_ESP32_SPIRAM_SUPPORT=y +CONFIG_ESP32S2_SPIRAM_SUPPORT=y +CONFIG_ESP32S3_SPIRAM_SUPPORT=y +CONFIG_SPIRAM_SPEED_80M=y + diff --git a/code/components/esp32-camera-master/idf_component.yml b/code/components/esp32-camera-master/idf_component.yml deleted file mode 100644 index d8dc8e15..00000000 --- a/code/components/esp32-camera-master/idf_component.yml +++ /dev/null @@ -1,3 +0,0 @@ -version: "1.0.0" -description: This package hosts ESP32 compatible driver for OV2640 image sensors. Additionally it provides a few tools, which allow converting the captured frame data to the more common BMP and JPEG formats. -url: https://github.com/espressif/esp32-camera diff --git a/code/components/esp32-camera-master/library.json b/code/components/esp32-camera-master/library.json index 0fbf0265..322e932f 100644 --- a/code/components/esp32-camera-master/library.json +++ b/code/components/esp32-camera-master/library.json @@ -16,6 +16,7 @@ "-Idriver/private_include", "-Iconversions/private_include", "-Isensors/private_include", + "-Itarget/private_include", "-fno-rtti" ], "includeDir": ".", diff --git a/code/components/esp32-camera-master/sensors/gc0308.c b/code/components/esp32-camera-master/sensors/gc0308.c new file mode 100644 index 00000000..19064d3a --- /dev/null +++ b/code/components/esp32-camera-master/sensors/gc0308.c @@ -0,0 +1,465 @@ +// Copyright 2015-2021 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include +#include "freertos/FreeRTOS.h" +#include "freertos/task.h" +#include "sccb.h" +#include "gc0308.h" +#include "gc0308_regs.h" +#include "gc0308_settings.h" + +#if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) +#include "esp32-hal-log.h" +#else +#include "esp_log.h" +static const char *TAG = "gc0308"; +#endif + +#define H8(v) ((v)>>8) +#define L8(v) ((v)&0xff) + +//#define REG_DEBUG_ON + +static int read_reg(uint8_t slv_addr, const uint16_t reg) +{ + int ret = SCCB_Read(slv_addr, reg); +#ifdef REG_DEBUG_ON + if (ret < 0) { + ESP_LOGE(TAG, "READ REG 0x%04x FAILED: %d", reg, ret); + } +#endif + return ret; +} + +static int write_reg(uint8_t slv_addr, const uint16_t reg, uint8_t value) +{ + int ret = 0; +#ifndef REG_DEBUG_ON + ret = SCCB_Write(slv_addr, reg, value); +#else + int old_value = read_reg(slv_addr, reg); + if (old_value < 0) { + return old_value; + } + if ((uint8_t)old_value != value) { + ESP_LOGI(TAG, "NEW REG 0x%04x: 0x%02x to 0x%02x", reg, (uint8_t)old_value, value); + ret = SCCB_Write(slv_addr, reg, value); + } else { + ESP_LOGD(TAG, "OLD REG 0x%04x: 0x%02x", reg, (uint8_t)old_value); + ret = SCCB_Write(slv_addr, reg, value);//maybe not? + } + if (ret < 0) { + ESP_LOGE(TAG, "WRITE REG 0x%04x FAILED: %d", reg, ret); + } +#endif + return ret; +} + +static int check_reg_mask(uint8_t slv_addr, uint16_t reg, uint8_t mask) +{ + return (read_reg(slv_addr, reg) & mask) == mask; +} + +static int set_reg_bits(uint8_t slv_addr, uint16_t reg, uint8_t offset, uint8_t mask, uint8_t value) +{ + int ret = 0; + uint8_t c_value, new_value; + ret = read_reg(slv_addr, reg); + if (ret < 0) { + return ret; + } + c_value = ret; + new_value = (c_value & ~(mask << offset)) | ((value & mask) << offset); + ret = write_reg(slv_addr, reg, new_value); + return ret; +} + +static int write_regs(uint8_t slv_addr, const uint16_t (*regs)[2]) +{ + int i = 0, ret = 0; + while (!ret && regs[i][0] != REGLIST_TAIL) { + if (regs[i][0] == REG_DLY) { + vTaskDelay(regs[i][1] / portTICK_PERIOD_MS); + } else { + ret = write_reg(slv_addr, regs[i][0], regs[i][1]); + } + i++; + } + return ret; +} + +static void print_regs(uint8_t slv_addr) +{ +#ifdef DEBUG_PRINT_REG + ESP_LOGI(TAG, "REG list look ======================"); + for (size_t i = 0xf0; i <= 0xfe; i++) { + ESP_LOGI(TAG, "reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + ESP_LOGI(TAG, "\npage 0 ==="); + write_reg(slv_addr, 0xfe, 0x00); // page 0 + for (size_t i = 0x03; i <= 0xa2; i++) { + ESP_LOGI(TAG, "p0 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + + ESP_LOGI(TAG, "\npage 3 ==="); + write_reg(slv_addr, 0xfe, 0x03); // page 3 + for (size_t i = 0x01; i <= 0x43; i++) { + ESP_LOGI(TAG, "p3 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } +#endif +} + +static int reset(sensor_t *sensor) +{ + int ret = 0; + // Software Reset: clear all registers and reset them to their default values + ret = write_reg(sensor->slv_addr, RESET_RELATED, 0xf0); + if (ret) { + ESP_LOGE(TAG, "Software Reset FAILED!"); + return ret; + } + vTaskDelay(100 / portTICK_PERIOD_MS); + ret = write_regs(sensor->slv_addr, gc0308_sensor_default_regs); + if (ret == 0) { + ESP_LOGD(TAG, "Camera defaults loaded"); + vTaskDelay(100 / portTICK_PERIOD_MS); + write_reg(sensor->slv_addr, 0xfe, 0x00); +#ifdef CONFIG_IDF_TARGET_ESP32 + set_reg_bits(sensor->slv_addr, 0x28, 4, 0x07, 1); //frequency division for esp32, ensure pclk <= 15MHz +#endif + } + return ret; +} + +static int set_pixformat(sensor_t *sensor, pixformat_t pixformat) +{ + int ret = 0; + + switch (pixformat) { + case PIXFORMAT_RGB565: + write_reg(sensor->slv_addr, 0xfe, 0x00); + ret = set_reg_bits(sensor->slv_addr, 0x24, 0, 0x0f, 6); //RGB565 + break; + + case PIXFORMAT_YUV422: + write_reg(sensor->slv_addr, 0xfe, 0x00); + ret = set_reg_bits(sensor->slv_addr, 0x24, 0, 0x0f, 2); //yuv422 Y Cb Y Cr + break; + default: + ESP_LOGW(TAG, "unsupport format"); + ret = -1; + break; + } + + if (ret == 0) { + sensor->pixformat = pixformat; + ESP_LOGD(TAG, "Set pixformat to: %u", pixformat); + } + return ret; +} + +static int set_framesize(sensor_t *sensor, framesize_t framesize) +{ + int ret = 0; + if (framesize > FRAMESIZE_VGA) { + ESP_LOGW(TAG, "Invalid framesize: %u", framesize); + framesize = FRAMESIZE_VGA; + } + sensor->status.framesize = framesize; + uint16_t w = resolution[framesize].width; + uint16_t h = resolution[framesize].height; + uint16_t row_s = (resolution[FRAMESIZE_VGA].height - h) / 2; + uint16_t col_s = (resolution[FRAMESIZE_VGA].width - w) / 2; + +#if CONFIG_GC_SENSOR_SUBSAMPLE_MODE + struct subsample_cfg { + uint16_t ratio_numerator; + uint16_t ratio_denominator; + uint8_t reg0x54; + uint8_t reg0x56; + uint8_t reg0x57; + uint8_t reg0x58; + uint8_t reg0x59; + }; + const struct subsample_cfg subsample_cfgs[] = { // define some subsample ratio + {84, 420, 0x55, 0x00, 0x00, 0x00, 0x00}, //1/5 + {105, 420, 0x44, 0x00, 0x00, 0x00, 0x00},//1/4 + {140, 420, 0x33, 0x00, 0x00, 0x00, 0x00},//1/3 + {210, 420, 0x22, 0x00, 0x00, 0x00, 0x00},//1/2 + {240, 420, 0x77, 0x02, 0x46, 0x02, 0x46},//4/7 + {252, 420, 0x55, 0x02, 0x04, 0x02, 0x04},//3/5 + {280, 420, 0x33, 0x02, 0x00, 0x02, 0x00},//2/3 + {420, 420, 0x11, 0x00, 0x00, 0x00, 0x00},//1/1 + }; + uint16_t win_w = 640; + uint16_t win_h = 480; + const struct subsample_cfg *cfg = NULL; + /** + * Strategy: try to keep the maximum perspective + */ + for (size_t i = 0; i < sizeof(subsample_cfgs) / sizeof(struct subsample_cfg); i++) { + cfg = &subsample_cfgs[i]; + if ((win_w * cfg->ratio_numerator / cfg->ratio_denominator >= w) && (win_h * cfg->ratio_numerator / cfg->ratio_denominator >= h)) { + win_w = w * cfg->ratio_denominator / cfg->ratio_numerator; + win_h = h * cfg->ratio_denominator / cfg->ratio_numerator; + row_s = (resolution[FRAMESIZE_VGA].height - win_h) / 2; + col_s = (resolution[FRAMESIZE_VGA].width - win_w) / 2; + ESP_LOGI(TAG, "subsample win:%dx%d, ratio:%f", win_w, win_h, (float)cfg->ratio_numerator / (float)cfg->ratio_denominator); + break; + } + } + + write_reg(sensor->slv_addr, 0xfe, 0x00); + + write_reg(sensor->slv_addr, 0x05, H8(row_s)); + write_reg(sensor->slv_addr, 0x06, L8(row_s)); + write_reg(sensor->slv_addr, 0x07, H8(col_s)); + write_reg(sensor->slv_addr, 0x08, L8(col_s)); + write_reg(sensor->slv_addr, 0x09, H8(win_h + 8)); + write_reg(sensor->slv_addr, 0x0a, L8(win_h + 8)); + write_reg(sensor->slv_addr, 0x0b, H8(win_w + 8)); + write_reg(sensor->slv_addr, 0x0c, L8(win_w + 8)); + + write_reg(sensor->slv_addr, 0xfe, 0x01); + set_reg_bits(sensor->slv_addr, 0x53, 7, 0x01, 1); + set_reg_bits(sensor->slv_addr, 0x55, 0, 0x01, 1); + write_reg(sensor->slv_addr, 0x54, cfg->reg0x54); + write_reg(sensor->slv_addr, 0x56, cfg->reg0x56); + write_reg(sensor->slv_addr, 0x57, cfg->reg0x57); + write_reg(sensor->slv_addr, 0x58, cfg->reg0x58); + write_reg(sensor->slv_addr, 0x59, cfg->reg0x59); + + write_reg(sensor->slv_addr, 0xfe, 0x00); + +#elif CONFIG_GC_SENSOR_WINDOWING_MODE + write_reg(sensor->slv_addr, 0xfe, 0x00); + + write_reg(sensor->slv_addr, 0xf7, col_s / 4); + write_reg(sensor->slv_addr, 0xf8, row_s / 4); + write_reg(sensor->slv_addr, 0xf9, (col_s + h) / 4); + write_reg(sensor->slv_addr, 0xfa, (row_s + w) / 4); + + write_reg(sensor->slv_addr, 0x05, H8(row_s)); + write_reg(sensor->slv_addr, 0x06, L8(row_s)); + write_reg(sensor->slv_addr, 0x07, H8(col_s)); + write_reg(sensor->slv_addr, 0x08, L8(col_s)); + + write_reg(sensor->slv_addr, 0x09, H8(h + 8)); + write_reg(sensor->slv_addr, 0x0a, L8(h + 8)); + write_reg(sensor->slv_addr, 0x0b, H8(w + 8)); + write_reg(sensor->slv_addr, 0x0c, L8(w + 8)); + +#endif + if (ret == 0) { + ESP_LOGD(TAG, "Set framesize to: %ux%u", w, h); + } + return 0; +} + +static int set_contrast(sensor_t *sensor, int contrast) +{ + if (contrast != 0) { + write_reg(sensor->slv_addr, 0xfe, 0x00); + write_reg(sensor->slv_addr, 0xb3, contrast); + } + return 0; +} + +static int set_global_gain(sensor_t *sensor, int gain_level) +{ + if (gain_level != 0) { + write_reg(sensor->slv_addr, 0xfe, 0x00); + write_reg(sensor->slv_addr, 0x50, gain_level); + } + return 0; +} + +static int set_hmirror(sensor_t *sensor, int enable) +{ + int ret = 0; + sensor->status.hmirror = enable; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, 0x14, 0, 0x01, enable != 0); + if (ret == 0) { + ESP_LOGD(TAG, "Set h-mirror to: %d", enable); + } + return ret; +} + +static int set_vflip(sensor_t *sensor, int enable) +{ + int ret = 0; + sensor->status.vflip = enable; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, 0x14, 1, 0x01, enable != 0); + if (ret == 0) { + ESP_LOGD(TAG, "Set v-flip to: %d", enable); + } + return ret; +} + +static int set_colorbar(sensor_t *sensor, int enable) +{ + int ret = 0; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, 0x2e, 0, 0x01, enable); + if (ret == 0) { + sensor->status.colorbar = enable; + ESP_LOGD(TAG, "Set colorbar to: %d", enable); + } + return ret; +} + +static int get_reg(sensor_t *sensor, int reg, int mask) +{ + int ret = 0; + if (mask > 0xFF) { + ESP_LOGE(TAG, "mask should not more than 0xff"); + } else { + ret = read_reg(sensor->slv_addr, reg); + } + if (ret > 0) { + ret &= mask; + } + return ret; +} + +static int set_reg(sensor_t *sensor, int reg, int mask, int value) +{ + int ret = 0; + if (mask > 0xFF) { + ESP_LOGE(TAG, "mask should not more than 0xff"); + } else { + ret = read_reg(sensor->slv_addr, reg); + } + if (ret < 0) { + return ret; + } + value = (ret & ~mask) | (value & mask); + + if (mask > 0xFF) { + + } else { + ret = write_reg(sensor->slv_addr, reg, value); + } + return ret; +} + +static int init_status(sensor_t *sensor) +{ + write_reg(sensor->slv_addr, 0xfe, 0x00); + sensor->status.brightness = 0; + sensor->status.contrast = 0; + sensor->status.saturation = 0; + sensor->status.sharpness = 0; + sensor->status.denoise = 0; + sensor->status.ae_level = 0; + sensor->status.gainceiling = 0; + sensor->status.awb = 0; + sensor->status.dcw = 0; + sensor->status.agc = 0; + sensor->status.aec = 0; + sensor->status.hmirror = check_reg_mask(sensor->slv_addr, 0x14, 0x01); + sensor->status.vflip = check_reg_mask(sensor->slv_addr, 0x14, 0x02); + sensor->status.colorbar = 0; + sensor->status.bpc = 0; + sensor->status.wpc = 0; + sensor->status.raw_gma = 0; + sensor->status.lenc = 0; + sensor->status.quality = 0; + sensor->status.special_effect = 0; + sensor->status.wb_mode = 0; + sensor->status.awb_gain = 0; + sensor->status.agc_gain = 0; + sensor->status.aec_value = 0; + sensor->status.aec2 = 0; + + print_regs(sensor->slv_addr); + return 0; +} + +static int set_dummy(sensor_t *sensor, int val) +{ + ESP_LOGW(TAG, "Unsupported"); + return -1; +} +static int set_gainceiling_dummy(sensor_t *sensor, gainceiling_t val) +{ + ESP_LOGW(TAG, "Unsupported"); + return -1; +} + +int gc0308_detect(int slv_addr, sensor_id_t *id) +{ + if (GC0308_SCCB_ADDR == slv_addr) { + write_reg(slv_addr, 0xfe, 0x00); + uint8_t PID = SCCB_Read(slv_addr, 0x00); + if (GC0308_PID == PID) { + id->PID = PID; + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + +int gc0308_init(sensor_t *sensor) +{ + sensor->init_status = init_status; + sensor->reset = reset; + sensor->set_pixformat = set_pixformat; + sensor->set_framesize = set_framesize; + sensor->set_contrast = set_contrast; + sensor->set_brightness = set_dummy; + sensor->set_saturation = set_dummy; + sensor->set_sharpness = set_dummy; + sensor->set_denoise = set_dummy; + sensor->set_gainceiling = set_gainceiling_dummy; + sensor->set_quality = set_dummy; + sensor->set_colorbar = set_colorbar; + sensor->set_whitebal = set_dummy; + sensor->set_gain_ctrl = set_global_gain; + sensor->set_exposure_ctrl = set_dummy; + sensor->set_hmirror = set_hmirror; + sensor->set_vflip = set_vflip; + + sensor->set_aec2 = set_dummy; + sensor->set_awb_gain = set_dummy; + sensor->set_agc_gain = set_dummy; + sensor->set_aec_value = set_dummy; + + sensor->set_special_effect = set_dummy; + sensor->set_wb_mode = set_dummy; + sensor->set_ae_level = set_dummy; + + sensor->set_dcw = set_dummy; + sensor->set_bpc = set_dummy; + sensor->set_wpc = set_dummy; + + sensor->set_raw_gma = set_dummy; + sensor->set_lenc = set_dummy; + + sensor->get_reg = get_reg; + sensor->set_reg = set_reg; + sensor->set_res_raw = NULL; + sensor->set_pll = NULL; + sensor->set_xclk = NULL; + + ESP_LOGD(TAG, "GC0308 Attached"); + return 0; +} diff --git a/code/components/esp32-camera-master/sensors/gc032a.c b/code/components/esp32-camera-master/sensors/gc032a.c new file mode 100644 index 00000000..612e17b1 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/gc032a.c @@ -0,0 +1,391 @@ +// Copyright 2015-2021 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include +#include +#include "freertos/FreeRTOS.h" +#include "freertos/task.h" +#include "sccb.h" +#include "gc032a.h" +#include "gc032a_regs.h" +#include "gc032a_settings.h" + +#if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) +#include "esp32-hal-log.h" +#else +#include "esp_log.h" +static const char *TAG = "gc032a"; +#endif + +#define H8(v) ((v)>>8) +#define L8(v) ((v)&0xff) + +//#define REG_DEBUG_ON + +static int read_reg(uint8_t slv_addr, const uint16_t reg) +{ + int ret = SCCB_Read(slv_addr, reg); +#ifdef REG_DEBUG_ON + if (ret < 0) { + ESP_LOGE(TAG, "READ REG 0x%04x FAILED: %d", reg, ret); + } +#endif + return ret; +} + +static int write_reg(uint8_t slv_addr, const uint16_t reg, uint8_t value) +{ + int ret = 0; +#ifndef REG_DEBUG_ON + ret = SCCB_Write(slv_addr, reg, value); +#else + int old_value = read_reg(slv_addr, reg); + if (old_value < 0) { + return old_value; + } + if ((uint8_t)old_value != value) { + ESP_LOGI(TAG, "NEW REG 0x%04x: 0x%02x to 0x%02x", reg, (uint8_t)old_value, value); + ret = SCCB_Write(slv_addr, reg, value); + } else { + ESP_LOGD(TAG, "OLD REG 0x%04x: 0x%02x", reg, (uint8_t)old_value); + ret = SCCB_Write(slv_addr, reg, value);//maybe not? + } + if (ret < 0) { + ESP_LOGE(TAG, "WRITE REG 0x%04x FAILED: %d", reg, ret); + } +#endif + return ret; +} + +static int check_reg_mask(uint8_t slv_addr, uint16_t reg, uint8_t mask) +{ + return (read_reg(slv_addr, reg) & mask) == mask; +} + +static void print_regs(uint8_t slv_addr) +{ +#ifdef DEBUG_PRINT_REG + vTaskDelay(pdMS_TO_TICKS(100)); + ESP_LOGI(TAG, "REG list look ======================"); + for (size_t i = 0xf0; i <= 0xfe; i++) { + ESP_LOGI(TAG, "reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + ESP_LOGI(TAG, "\npage 0 ==="); + write_reg(slv_addr, 0xfe, 0x00); // page 0 + for (size_t i = 0x03; i <= 0x24; i++) { + ESP_LOGI(TAG, "p0 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + for (size_t i = 0x40; i <= 0x95; i++) { + ESP_LOGI(TAG, "p0 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + ESP_LOGI(TAG, "\npage 3 ==="); + write_reg(slv_addr, 0xfe, 0x03); // page 3 + for (size_t i = 0x01; i <= 0x43; i++) { + ESP_LOGI(TAG, "p3 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } +#endif +} + +static int set_reg_bits(uint8_t slv_addr, uint16_t reg, uint8_t offset, uint8_t mask, uint8_t value) +{ + int ret = 0; + uint8_t c_value, new_value; + ret = read_reg(slv_addr, reg); + if (ret < 0) { + return ret; + } + c_value = ret; + new_value = (c_value & ~(mask << offset)) | ((value & mask) << offset); + ret = write_reg(slv_addr, reg, new_value); + return ret; +} + +static int write_regs(uint8_t slv_addr, const uint16_t (*regs)[2]) +{ + int i = 0, ret = 0; + while (!ret && regs[i][0] != REGLIST_TAIL) { + if (regs[i][0] == REG_DLY) { + vTaskDelay(regs[i][1] / portTICK_PERIOD_MS); + } else { + ret = write_reg(slv_addr, regs[i][0], regs[i][1]); + } + i++; + } + return ret; +} + +static int reset(sensor_t *sensor) +{ + int ret; + // Software Reset: clear all registers and reset them to their default values + ret = write_reg(sensor->slv_addr, RESET_RELATED, 0xf0); + if (ret) { + ESP_LOGE(TAG, "Software Reset FAILED!"); + return ret; + } + vTaskDelay(100 / portTICK_PERIOD_MS); + + ret = write_regs(sensor->slv_addr, gc032a_default_regs); + if (ret == 0) { + ESP_LOGD(TAG, "Camera defaults loaded"); + vTaskDelay(100 / portTICK_PERIOD_MS); + write_reg(sensor->slv_addr, 0xfe, 0x00); + set_reg_bits(sensor->slv_addr, 0xf7, 1, 0x01, 1); // PLL_mode1:div2en + set_reg_bits(sensor->slv_addr, 0xf7, 7, 0x01, 1); // PLL_mode1:dvp mode + set_reg_bits(sensor->slv_addr, 0xf8, 0, 0x3f, 8); //PLL_mode2 :divx4 + set_reg_bits(sensor->slv_addr, 0xfa, 4, 0x0f, 2); //vlk div mode :divide_by + } + + return ret; +} + +static int set_pixformat(sensor_t *sensor, pixformat_t pixformat) +{ + int ret = 0; + switch (pixformat) { + case PIXFORMAT_RGB565: + write_reg(sensor->slv_addr, 0xfe, 0x00); + ret = set_reg_bits(sensor->slv_addr, 0x44, 0, 0x1f, 6); //RGB565 + break; + + case PIXFORMAT_YUV422: + write_reg(sensor->slv_addr, 0xfe, 0x00); + ret = set_reg_bits(sensor->slv_addr, 0x44, 0, 0x1f, 3); + break; + default: + ESP_LOGW(TAG, "unsupport format"); + ret = -1; + break; + } + if (ret == 0) { + sensor->pixformat = pixformat; + ESP_LOGD(TAG, "Set pixformat to: %u", pixformat); + } + + return ret; +} + +static int set_framesize(sensor_t *sensor, framesize_t framesize) +{ + ESP_LOGI(TAG, "set_framesize"); + int ret = 0; + if (framesize > FRAMESIZE_VGA) { + ESP_LOGW(TAG, "Invalid framesize: %u", framesize); + framesize = FRAMESIZE_VGA; + } + sensor->status.framesize = framesize; + uint16_t w = resolution[framesize].width; + uint16_t h = resolution[framesize].height; + uint16_t row_s = (resolution[FRAMESIZE_VGA].height - h) / 2; + uint16_t col_s = (resolution[FRAMESIZE_VGA].width - w) / 2; + + write_reg(sensor->slv_addr, 0xfe, 0x00); + write_reg(sensor->slv_addr, P0_ROW_START_HIGH, H8(row_s)); // Row_start[8] + write_reg(sensor->slv_addr, P0_ROW_START_LOW, L8(row_s)); // Row_start[7:0] + write_reg(sensor->slv_addr, P0_COLUMN_START_HIGH, H8(col_s)); // Column_start[9:8] + write_reg(sensor->slv_addr, P0_COLUMN_START_LOW, L8(col_s)); // Column_start[7:0] + write_reg(sensor->slv_addr, P0_WINDOW_HEIGHT_HIGH, H8(h + 8)); //window_height [8] + write_reg(sensor->slv_addr, P0_WINDOW_HEIGHT_LOW, L8(h + 8)); //window_height [7:0] + write_reg(sensor->slv_addr, P0_WINDOW_WIDTH_HIGH, H8(w + 8)); //window_width [9:8] + write_reg(sensor->slv_addr, P0_WINDOW_WIDTH_LOW, L8(w + 8)); //window_width [7:0] + + write_reg(sensor->slv_addr, P0_WIN_MODE, 0x01); + write_reg(sensor->slv_addr, P0_OUT_WIN_HEIGHT_HIGH, H8(h)); + write_reg(sensor->slv_addr, P0_OUT_WIN_HEIGHT_LOW, L8(h)); + write_reg(sensor->slv_addr, P0_OUT_WIN_WIDTH_HIGH, H8(w)); + write_reg(sensor->slv_addr, P0_OUT_WIN_WIDTH_LOW, L8(w)); + + if (ret == 0) { + ESP_LOGD(TAG, "Set framesize to: %ux%u", w, h); + } + print_regs(sensor->slv_addr); + return ret; +} + +static int set_hmirror(sensor_t *sensor, int enable) +{ + int ret = 0; + sensor->status.hmirror = enable; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, P0_CISCTL_MODE1, 0, 0x01, enable); + if (ret == 0) { + ESP_LOGD(TAG, "Set h-mirror to: %d", enable); + } + return ret; +} + +static int set_vflip(sensor_t *sensor, int enable) +{ + int ret = 0; + sensor->status.vflip = enable; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, P0_CISCTL_MODE1, 1, 0x01, enable); + if (ret == 0) { + ESP_LOGD(TAG, "Set v-flip to: %d", enable); + } + return ret; +} + +static int set_colorbar(sensor_t *sensor, int enable) +{ + int ret = 0; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, P0_DEBUG_MODE2, 3, 0x01, enable); + if (ret == 0) { + sensor->status.colorbar = enable; + ESP_LOGD(TAG, "Set colorbar to: %d", enable); + } + return ret; +} + +static int get_reg(sensor_t *sensor, int reg, int mask) +{ + int ret = 0; + if (mask > 0xFF) { + ESP_LOGE(TAG, "mask should not more than 0xff"); + } else { + ret = read_reg(sensor->slv_addr, reg); + } + if (ret > 0) { + ret &= mask; + } + return ret; +} + +static int set_reg(sensor_t *sensor, int reg, int mask, int value) +{ + int ret = 0; + if (mask > 0xFF) { + ESP_LOGE(TAG, "mask should not more than 0xff"); + } else { + ret = read_reg(sensor->slv_addr, reg); + } + if (ret < 0) { + return ret; + } + value = (ret & ~mask) | (value & mask); + + if (mask > 0xFF) { + + } else { + ret = write_reg(sensor->slv_addr, reg, value); + } + return ret; +} + +static int init_status(sensor_t *sensor) +{ + write_reg(sensor->slv_addr, 0xfe, 0x00); + sensor->status.brightness = 0; + sensor->status.contrast = 0; + sensor->status.saturation = 0; + sensor->status.sharpness = 0; + sensor->status.denoise = 0; + sensor->status.ae_level = 0; + sensor->status.gainceiling = 0; + sensor->status.awb = 0; + sensor->status.dcw = 0; + sensor->status.agc = 0; + sensor->status.aec = 0; + sensor->status.hmirror = check_reg_mask(sensor->slv_addr, P0_CISCTL_MODE1, 0x01); + sensor->status.vflip = check_reg_mask(sensor->slv_addr, P0_CISCTL_MODE1, 0x02); + sensor->status.colorbar = 0; + sensor->status.bpc = 0; + sensor->status.wpc = 0; + sensor->status.raw_gma = 0; + sensor->status.lenc = 0; + sensor->status.quality = 0; + sensor->status.special_effect = 0; + sensor->status.wb_mode = 0; + sensor->status.awb_gain = 0; + sensor->status.agc_gain = 0; + sensor->status.aec_value = 0; + sensor->status.aec2 = 0; + return 0; +} + +static int set_dummy(sensor_t *sensor, int val) +{ + ESP_LOGW(TAG, "Unsupported"); + return -1; +} +static int set_gainceiling_dummy(sensor_t *sensor, gainceiling_t val) +{ + ESP_LOGW(TAG, "Unsupported"); + return -1; +} + +int gc032a_detect(int slv_addr, sensor_id_t *id) +{ + if (GC032A_SCCB_ADDR == slv_addr) { + uint8_t MIDL = SCCB_Read(slv_addr, SENSOR_ID_LOW); + uint8_t MIDH = SCCB_Read(slv_addr, SENSOR_ID_HIGH); + uint16_t PID = MIDH << 8 | MIDL; + if (GC032A_PID == PID) { + id->PID = PID; + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + +int gc032a_init(sensor_t *sensor) +{ + sensor->init_status = init_status; + sensor->reset = reset; + sensor->set_pixformat = set_pixformat; + sensor->set_framesize = set_framesize; + sensor->set_contrast = set_dummy; + sensor->set_brightness = set_dummy; + sensor->set_saturation = set_dummy; + sensor->set_sharpness = set_dummy; + sensor->set_denoise = set_dummy; + sensor->set_gainceiling = set_gainceiling_dummy; + sensor->set_quality = set_dummy; + sensor->set_colorbar = set_colorbar; + sensor->set_whitebal = set_dummy; + sensor->set_gain_ctrl = set_dummy; + sensor->set_exposure_ctrl = set_dummy; + sensor->set_hmirror = set_hmirror; + sensor->set_vflip = set_vflip; + + sensor->set_aec2 = set_dummy; + sensor->set_awb_gain = set_dummy; + sensor->set_agc_gain = set_dummy; + sensor->set_aec_value = set_dummy; + + sensor->set_special_effect = set_dummy; + sensor->set_wb_mode = set_dummy; + sensor->set_ae_level = set_dummy; + + sensor->set_dcw = set_dummy; + sensor->set_bpc = set_dummy; + sensor->set_wpc = set_dummy; + + sensor->set_raw_gma = set_dummy; + sensor->set_lenc = set_dummy; + + sensor->get_reg = get_reg; + sensor->set_reg = set_reg; + sensor->set_res_raw = NULL; + sensor->set_pll = NULL; + sensor->set_xclk = NULL; + + ESP_LOGD(TAG, "GC032A Attached"); + return 0; +} diff --git a/code/components/esp32-camera-master/sensors/gc2145.c b/code/components/esp32-camera-master/sensors/gc2145.c new file mode 100644 index 00000000..31130829 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/gc2145.c @@ -0,0 +1,475 @@ +// Copyright 2015-2021 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include +#include "freertos/FreeRTOS.h" +#include "freertos/task.h" +#include "sccb.h" +#include "gc2145.h" +#include "gc2145_regs.h" +#include "gc2145_settings.h" + +#if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) +#include "esp32-hal-log.h" +#else +#include "esp_log.h" +static const char *TAG = "gc2145"; +#endif + +#define H8(v) ((v)>>8) +#define L8(v) ((v)&0xff) + +//#define REG_DEBUG_ON + +static int read_reg(uint8_t slv_addr, const uint16_t reg) +{ + int ret = SCCB_Read(slv_addr, reg); +#ifdef REG_DEBUG_ON + if (ret < 0) { + ESP_LOGE(TAG, "READ REG 0x%04x FAILED: %d", reg, ret); + } +#endif + return ret; +} + +static int write_reg(uint8_t slv_addr, const uint16_t reg, uint8_t value) +{ + int ret = 0; +#ifndef REG_DEBUG_ON + ret = SCCB_Write(slv_addr, reg, value); +#else + int old_value = read_reg(slv_addr, reg); + if (old_value < 0) { + return old_value; + } + if ((uint8_t)old_value != value) { + ESP_LOGI(TAG, "NEW REG 0x%04x: 0x%02x to 0x%02x", reg, (uint8_t)old_value, value); + ret = SCCB_Write(slv_addr, reg, value); + } else { + ESP_LOGD(TAG, "OLD REG 0x%04x: 0x%02x", reg, (uint8_t)old_value); + ret = SCCB_Write(slv_addr, reg, value);//maybe not? + } + if (ret < 0) { + ESP_LOGE(TAG, "WRITE REG 0x%04x FAILED: %d", reg, ret); + } +#endif + return ret; +} + +static int check_reg_mask(uint8_t slv_addr, uint16_t reg, uint8_t mask) +{ + return (read_reg(slv_addr, reg) & mask) == mask; +} + +static int set_reg_bits(uint8_t slv_addr, uint16_t reg, uint8_t offset, uint8_t mask, uint8_t value) +{ + int ret = 0; + uint8_t c_value, new_value; + ret = read_reg(slv_addr, reg); + if (ret < 0) { + return ret; + } + c_value = ret; + new_value = (c_value & ~(mask << offset)) | ((value & mask) << offset); + ret = write_reg(slv_addr, reg, new_value); + return ret; +} + +static int write_regs(uint8_t slv_addr, const uint16_t (*regs)[2]) +{ + int i = 0, ret = 0; + while (!ret && regs[i][0] != REGLIST_TAIL) { + if (regs[i][0] == REG_DLY) { + vTaskDelay(regs[i][1] / portTICK_PERIOD_MS); + } else { + ret = write_reg(slv_addr, regs[i][0], regs[i][1]); + } + i++; + } + return ret; +} + +static void print_regs(uint8_t slv_addr) +{ +#ifdef DEBUG_PRINT_REG + vTaskDelay(pdMS_TO_TICKS(100)); + ESP_LOGI(TAG, "REG list look ======================"); + for (size_t i = 0xf0; i <= 0xfe; i++) { + ESP_LOGI(TAG, "reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + ESP_LOGI(TAG, "\npage 0 ==="); + write_reg(slv_addr, 0xfe, 0x00); // page 0 + for (size_t i = 0x03; i <= 0x24; i++) { + ESP_LOGI(TAG, "p0 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + for (size_t i = 0x80; i <= 0xa2; i++) { + ESP_LOGI(TAG, "p0 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } + ESP_LOGI(TAG, "\npage 3 ==="); + write_reg(slv_addr, 0xfe, 0x03); // page 3 + for (size_t i = 0x01; i <= 0x43; i++) { + ESP_LOGI(TAG, "p3 reg[0x%02x] = 0x%02x", i, read_reg(slv_addr, i)); + } +#endif +} + +static int reset(sensor_t *sensor) +{ + int ret = 0; + // Software Reset: clear all registers and reset them to their default values + ret = write_reg(sensor->slv_addr, RESET_RELATED, 0xe0); + if (ret) { + ESP_LOGE(TAG, "Software Reset FAILED!"); + return ret; + } + vTaskDelay(100 / portTICK_PERIOD_MS); + ret = write_regs(sensor->slv_addr, gc2145_default_init_regs); + if (ret == 0) { + ESP_LOGD(TAG, "Camera defaults loaded"); + vTaskDelay(100 / portTICK_PERIOD_MS); +#ifdef CONFIG_IDF_TARGET_ESP32 + write_reg(sensor->slv_addr, 0xfe, 0x00); + //ensure pclk <= 15MHz for esp32 + set_reg_bits(sensor->slv_addr, 0xf8, 0, 0x3f, 2); // divx4 + set_reg_bits(sensor->slv_addr, 0xfa, 4, 0x0f, 2); // divide_by +#endif + + } + return ret; +} + +static int set_pixformat(sensor_t *sensor, pixformat_t pixformat) +{ + int ret = 0; + + switch (pixformat) { + case PIXFORMAT_RGB565: + write_reg(sensor->slv_addr, 0xfe, 0x00); + ret = set_reg_bits(sensor->slv_addr, P0_OUTPUT_FORMAT, 0, 0x1f, 6); //RGB565 + break; + + case PIXFORMAT_YUV422: + write_reg(sensor->slv_addr, 0xfe, 0x00); + ret = set_reg_bits(sensor->slv_addr, P0_OUTPUT_FORMAT, 0, 0x1f, 2); //yuv422 + break; + default: + ESP_LOGW(TAG, "unsupport format"); + ret = -1; + break; + } + + if (ret == 0) { + sensor->pixformat = pixformat; + ESP_LOGD(TAG, "Set pixformat to: %u", pixformat); + } + return ret; +} + +static int set_framesize(sensor_t *sensor, framesize_t framesize) +{ + int ret = 0; + if (framesize > FRAMESIZE_UXGA) { + ESP_LOGW(TAG, "Invalid framesize: %u", framesize); + framesize = FRAMESIZE_UXGA; + } + sensor->status.framesize = framesize; + uint16_t w = resolution[framesize].width; + uint16_t h = resolution[framesize].height; + uint16_t row_s = (resolution[FRAMESIZE_UXGA].height - h) / 2; + uint16_t col_s = (resolution[FRAMESIZE_UXGA].width - w) / 2; + +#if CONFIG_GC_SENSOR_SUBSAMPLE_MODE + struct subsample_cfg { + uint16_t ratio_numerator; + uint16_t ratio_denominator; + uint8_t reg0x99; + uint8_t reg0x9b; + uint8_t reg0x9c; + uint8_t reg0x9d; + uint8_t reg0x9e; + uint8_t reg0x9f; + uint8_t reg0xa0; + uint8_t reg0xa1; + uint8_t reg0xa2; + }; + const struct subsample_cfg subsample_cfgs[] = { // define some subsample ratio + // {60, 420, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //1/7 // A smaller ratio brings a larger view, but it reduces the frame rate + // {84, 420, 0x55, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //1/5 + // {105, 420, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},//1/4 + {140, 420, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},//1/3 + {210, 420, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},//1/2 + {240, 420, 0x77, 0x02, 0x46, 0x02, 0x46, 0x02, 0x46, 0x02, 0x46},//4/7 + {252, 420, 0x55, 0x02, 0x04, 0x02, 0x04, 0x02, 0x04, 0x02, 0x04},//3/5 + {280, 420, 0x33, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00},//2/3 + {420, 420, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},//1/1 + }; + uint16_t win_w = resolution[FRAMESIZE_UXGA].width; + uint16_t win_h = resolution[FRAMESIZE_UXGA].height; + const struct subsample_cfg *cfg = NULL; + /** + * Strategy: try to keep the maximum perspective + */ + uint8_t i = 0; + if (framesize >= FRAMESIZE_QVGA) { + i = 1; + } + for (; i < sizeof(subsample_cfgs) / sizeof(struct subsample_cfg); i++) { + cfg = &subsample_cfgs[i]; + if ((win_w * cfg->ratio_numerator / cfg->ratio_denominator >= w) && (win_h * cfg->ratio_numerator / cfg->ratio_denominator >= h)) { + win_w = w * cfg->ratio_denominator / cfg->ratio_numerator; + win_h = h * cfg->ratio_denominator / cfg->ratio_numerator; + row_s = (resolution[FRAMESIZE_UXGA].height - win_h) / 2; + col_s = (resolution[FRAMESIZE_UXGA].width - win_w) / 2; + ESP_LOGI(TAG, "subsample win:%dx%d, ratio:%f", win_w, win_h, (float)cfg->ratio_numerator / (float)cfg->ratio_denominator); + break; + } + } + + write_reg(sensor->slv_addr, 0xfe, 0x00); + write_reg(sensor->slv_addr, P0_CROP_ENABLE, 0x01); + write_reg(sensor->slv_addr, 0x09, H8(row_s)); + write_reg(sensor->slv_addr, 0x0a, L8(row_s)); + write_reg(sensor->slv_addr, 0x0b, H8(col_s)); + write_reg(sensor->slv_addr, 0x0c, L8(col_s)); + write_reg(sensor->slv_addr, 0x0d, H8(win_h + 8)); + write_reg(sensor->slv_addr, 0x0e, L8(win_h + 8)); + write_reg(sensor->slv_addr, 0x0f, H8(win_w + 16)); + write_reg(sensor->slv_addr, 0x10, L8(win_w + 16)); + + write_reg(sensor->slv_addr, 0x99, cfg->reg0x99); + write_reg(sensor->slv_addr, 0x9b, cfg->reg0x9b); + write_reg(sensor->slv_addr, 0x9c, cfg->reg0x9c); + write_reg(sensor->slv_addr, 0x9d, cfg->reg0x9d); + write_reg(sensor->slv_addr, 0x9e, cfg->reg0x9e); + write_reg(sensor->slv_addr, 0x9f, cfg->reg0x9f); + write_reg(sensor->slv_addr, 0xa0, cfg->reg0xa0); + write_reg(sensor->slv_addr, 0xa1, cfg->reg0xa1); + write_reg(sensor->slv_addr, 0xa2, cfg->reg0xa2); + + write_reg(sensor->slv_addr, 0x95, H8(h)); + write_reg(sensor->slv_addr, 0x96, L8(h)); + write_reg(sensor->slv_addr, 0x97, H8(w)); + write_reg(sensor->slv_addr, 0x98, L8(w)); + + +#elif CONFIG_GC_SENSOR_WINDOWING_MODE + write_reg(sensor->slv_addr, 0xfe, 0x00); + + write_reg(sensor->slv_addr, P0_CROP_ENABLE, 0x01); + // write_reg(sensor->slv_addr, 0xec, col_s / 8); //measure window + // write_reg(sensor->slv_addr, 0xed, row_s / 8); + // write_reg(sensor->slv_addr, 0xee, (col_s + h) / 8); + // write_reg(sensor->slv_addr, 0xef, (row_s + w) / 8); + + write_reg(sensor->slv_addr, 0x09, H8(row_s)); + write_reg(sensor->slv_addr, 0x0a, L8(row_s)); + write_reg(sensor->slv_addr, 0x0b, H8(col_s)); + write_reg(sensor->slv_addr, 0x0c, L8(col_s)); + write_reg(sensor->slv_addr, 0x0d, H8(h + 8)); + write_reg(sensor->slv_addr, 0x0e, L8(h + 8)); + write_reg(sensor->slv_addr, 0x0f, H8(w + 8)); + write_reg(sensor->slv_addr, 0x10, L8(w + 8)); + + write_reg(sensor->slv_addr, 0x95, H8(h)); + write_reg(sensor->slv_addr, 0x96, L8(h)); + write_reg(sensor->slv_addr, 0x97, H8(w)); + write_reg(sensor->slv_addr, 0x98, L8(w)); + +#endif + + if (ret == 0) { + ESP_LOGD(TAG, "Set framesize to: %ux%u", w, h); + } + return ret; + +} + +static int set_hmirror(sensor_t *sensor, int enable) +{ + int ret = 0; + sensor->status.hmirror = enable; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, P0_ANALOG_MODE1, 0, 0x01, enable != 0); + if (ret == 0) { + ESP_LOGD(TAG, "Set h-mirror to: %d", enable); + } + return ret; +} + +static int set_vflip(sensor_t *sensor, int enable) +{ + int ret = 0; + sensor->status.vflip = enable; + ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + ret |= set_reg_bits(sensor->slv_addr, P0_ANALOG_MODE1, 1, 0x01, enable != 0); + if (ret == 0) { + ESP_LOGD(TAG, "Set v-flip to: %d", enable); + } + return ret; +} + +static int set_colorbar(sensor_t *sensor, int enable) +{ + int ret = 0; + // ret = write_reg(sensor->slv_addr, 0xfe, 0x00); + // ret |= set_reg_bits(sensor->slv_addr, P0_DEBUG_MODE3, 3, 0x01, enable); + if (ret == 0) { + sensor->status.colorbar = enable; + ESP_LOGD(TAG, "Set colorbar to: %d", enable); + } + return ret; +} + +static int get_reg(sensor_t *sensor, int reg, int mask) +{ + int ret = 0; + if (mask > 0xFF) { + ESP_LOGE(TAG, "mask should not more than 0xff"); + } else { + ret = read_reg(sensor->slv_addr, reg); + } + if (ret > 0) { + ret &= mask; + } + return ret; +} + +static int set_reg(sensor_t *sensor, int reg, int mask, int value) +{ + int ret = 0; + if (mask > 0xFF) { + ESP_LOGE(TAG, "mask should not more than 0xff"); + } else { + ret = read_reg(sensor->slv_addr, reg); + } + if (ret < 0) { + return ret; + } + value = (ret & ~mask) | (value & mask); + + if (mask > 0xFF) { + + } else { + ret = write_reg(sensor->slv_addr, reg, value); + } + return ret; +} + +static int init_status(sensor_t *sensor) +{ + write_reg(sensor->slv_addr, 0xfe, 0x00); + sensor->status.brightness = 0; + sensor->status.contrast = 0; + sensor->status.saturation = 0; + sensor->status.sharpness = 0; + sensor->status.denoise = 0; + sensor->status.ae_level = 0; + sensor->status.gainceiling = 0; + sensor->status.awb = 0; + sensor->status.dcw = 0; + sensor->status.agc = 0; + sensor->status.aec = 0; + sensor->status.hmirror = check_reg_mask(sensor->slv_addr, P0_ANALOG_MODE1, 0x01); + sensor->status.vflip = check_reg_mask(sensor->slv_addr, P0_ANALOG_MODE1, 0x02); + sensor->status.colorbar = 0; + sensor->status.bpc = 0; + sensor->status.wpc = 0; + sensor->status.raw_gma = 0; + sensor->status.lenc = 0; + sensor->status.quality = 0; + sensor->status.special_effect = 0; + sensor->status.wb_mode = 0; + sensor->status.awb_gain = 0; + sensor->status.agc_gain = 0; + sensor->status.aec_value = 0; + sensor->status.aec2 = 0; + + print_regs(sensor->slv_addr); + return 0; +} + +static int set_dummy(sensor_t *sensor, int val) +{ + ESP_LOGW(TAG, "Unsupported"); + return -1; +} +static int set_gainceiling_dummy(sensor_t *sensor, gainceiling_t val) +{ + ESP_LOGW(TAG, "Unsupported"); + return -1; +} + +int gc2145_detect(int slv_addr, sensor_id_t *id) +{ + if (GC2145_SCCB_ADDR == slv_addr) { + uint8_t MIDL = SCCB_Read(slv_addr, CHIP_ID_LOW); + uint8_t MIDH = SCCB_Read(slv_addr, CHIP_ID_HIGH); + uint16_t PID = MIDH << 8 | MIDL; + if (GC2145_PID == PID) { + id->PID = PID; + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + +int gc2145_init(sensor_t *sensor) +{ + sensor->init_status = init_status; + sensor->reset = reset; + sensor->set_pixformat = set_pixformat; + sensor->set_framesize = set_framesize; + sensor->set_contrast = set_dummy; + sensor->set_brightness = set_dummy; + sensor->set_saturation = set_dummy; + sensor->set_sharpness = set_dummy; + sensor->set_denoise = set_dummy; + sensor->set_gainceiling = set_gainceiling_dummy; + sensor->set_quality = set_dummy; + sensor->set_colorbar = set_colorbar; + sensor->set_whitebal = set_dummy; + sensor->set_gain_ctrl = set_dummy; + sensor->set_exposure_ctrl = set_dummy; + sensor->set_hmirror = set_hmirror; + sensor->set_vflip = set_vflip; + + sensor->set_aec2 = set_dummy; + sensor->set_awb_gain = set_dummy; + sensor->set_agc_gain = set_dummy; + sensor->set_aec_value = set_dummy; + + sensor->set_special_effect = set_dummy; + sensor->set_wb_mode = set_dummy; + sensor->set_ae_level = set_dummy; + + sensor->set_dcw = set_dummy; + sensor->set_bpc = set_dummy; + sensor->set_wpc = set_dummy; + + sensor->set_raw_gma = set_dummy; + sensor->set_lenc = set_dummy; + + sensor->get_reg = get_reg; + sensor->set_reg = set_reg; + sensor->set_res_raw = NULL; + sensor->set_pll = NULL; + sensor->set_xclk = NULL; + + ESP_LOGD(TAG, "GC2145 Attached"); + return 0; +} diff --git a/code/components/esp32-camera-master/sensors/nt99141.c b/code/components/esp32-camera-master/sensors/nt99141.c index 07a9cc4a..86a8b8a0 100644 --- a/code/components/esp32-camera-master/sensors/nt99141.c +++ b/code/components/esp32-camera-master/sensors/nt99141.c @@ -10,6 +10,7 @@ #include #include #include "sccb.h" +#include "xclk.h" #include "nt99141.h" #include "nt99141_regs.h" #include "nt99141_settings.h" @@ -144,28 +145,6 @@ static int write_addr_reg(uint8_t slv_addr, const uint16_t reg, uint16_t x_value #define write_reg_bits(slv_addr, reg, mask, enable) set_reg_bits(slv_addr, reg, 0, mask, enable?mask:0) -static int calc_sysclk(int xclk, bool pll_bypass, int pll_multiplier, int pll_sys_div, int pll_pre_div, bool pll_root_2x, int pll_seld5, bool pclk_manual, int pclk_div) -{ - const int pll_pre_div2x_map[] = { 2, 3, 4, 6 };//values are multiplied by two to avoid floats - const int pll_seld52x_map[] = { 2, 2, 4, 5 }; - - if (!pll_sys_div) { - pll_sys_div = 1; - } - - int pll_pre_div2x = pll_pre_div2x_map[pll_pre_div]; - int pll_root_div = pll_root_2x ? 2 : 1; - int pll_seld52x = pll_seld52x_map[pll_seld5]; - - int VCO = (xclk / 1000) * pll_multiplier * pll_root_div * 2 / pll_pre_div2x; - int PLLCLK = pll_bypass ? (xclk) : (VCO * 1000 * 2 / pll_sys_div / pll_seld52x); - int PCLK = PLLCLK / 2 / ((pclk_manual && pclk_div) ? pclk_div : 1); - int SYSCLK = PLLCLK / 4; - - ESP_LOGD(TAG, "Calculated VCO: %d Hz, PLLCLK: %d Hz, SYSCLK: %d Hz, PCLK: %d Hz", VCO * 1000, PLLCLK, SYSCLK, PCLK); - return SYSCLK; -} - static int set_pll(sensor_t *sensor, bool bypass, uint8_t multiplier, uint8_t sys_div, uint8_t pre_div, bool root_2x, uint8_t seld5, bool pclk_manual, uint8_t pclk_div) { return -1; @@ -309,7 +288,7 @@ static int set_framesize(sensor_t *sensor, framesize_t framesize) ret = write_regs(sensor->slv_addr, sensor_framesize_VGA); } - return 0; + return ret; } static int set_hmirror(sensor_t *sensor, int enable) @@ -682,7 +661,6 @@ static int set_brightness(sensor_t *sensor, int level) { int ret = 0; uint8_t value = 0; - bool negative = false; switch (level) { case 3: @@ -699,17 +677,14 @@ static int set_brightness(sensor_t *sensor, int level) case -1: value = 0x78; - negative = true; break; case -2: value = 0x70; - negative = true; break; case -3: value = 0x60; - negative = true; break; default: // 0 @@ -730,7 +705,6 @@ static int set_contrast(sensor_t *sensor, int level) { int ret = 0; uint8_t value1 = 0, value2 = 0 ; - bool negative = false; switch (level) { case 3: @@ -947,7 +921,6 @@ static int _set_pll(sensor_t *sensor, int bypass, int multiplier, int sys_div, i return set_pll(sensor, bypass > 0, multiplier, sys_div, pre_div, root_2x > 0, seld5, pclk_manual > 0, pclk_div); } -esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz); static int set_xclk(sensor_t *sensor, int timer, int xclk) { int ret = 0; @@ -961,6 +934,23 @@ static int set_xclk(sensor_t *sensor, int timer, int xclk) return ret; } +int nt99141_detect(int slv_addr, sensor_id_t *id) +{ + if (NT99141_SCCB_ADDR == slv_addr) { + SCCB_Write16(slv_addr, 0x3008, 0x01);//bank sensor + uint16_t h = SCCB_Read16(slv_addr, 0x3000); + uint16_t l = SCCB_Read16(slv_addr, 0x3001); + uint16_t PID = (h<<8) | l; + if (NT99141_PID == PID) { + id->PID = PID; + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + static int init_status(sensor_t *sensor) { sensor->status.brightness = 0; @@ -991,7 +981,7 @@ static int init_status(sensor_t *sensor) return 0; } -int NT99141_init(sensor_t *sensor) +int nt99141_init(sensor_t *sensor) { sensor->reset = reset; sensor->set_pixformat = set_pixformat; diff --git a/code/components/esp32-camera-master/sensors/ov2640.c b/code/components/esp32-camera-master/sensors/ov2640.c index 811023c0..7e3d7717 100644 --- a/code/components/esp32-camera-master/sensors/ov2640.c +++ b/code/components/esp32-camera-master/sensors/ov2640.c @@ -10,6 +10,7 @@ #include #include #include "sccb.h" +#include "xclk.h" #include "ov2640.h" #include "ov2640_regs.h" #include "ov2640_settings.h" @@ -149,7 +150,7 @@ static int set_window(sensor_t *sensor, ov2640_sensor_mode_t mode, int offset_x, {VSIZE, max_y & 0xFF}, {XOFFL, offset_x & 0xFF}, {YOFFL, offset_y & 0xFF}, - {VHYX, ((max_y >> 1) & 0X80) | ((offset_y >> 4) & 0X70) | ((max_x >> 5) & 0X08) | ((offset_y >> 8) & 0X07)}, + {VHYX, ((max_y >> 1) & 0X80) | ((offset_y >> 4) & 0X70) | ((max_x >> 5) & 0X08) | ((offset_x >> 8) & 0X07)}, {TEST, (max_x >> 2) & 0X80}, {ZMOW, (w)&0xFF}, {ZMOH, (h)&0xFF}, @@ -157,26 +158,40 @@ static int set_window(sensor_t *sensor, ov2640_sensor_mode_t mode, int offset_x, {0, 0} }; - c.pclk_auto = 0; - c.pclk_div = 8; - c.clk_2x = 0; - c.clk_div = 0; - - if(sensor->pixformat != PIXFORMAT_JPEG){ - c.pclk_auto = 1; + if (sensor->pixformat == PIXFORMAT_JPEG) { + c.clk_2x = 0; + c.clk_div = 0; + c.pclk_auto = 0; + c.pclk_div = 8; + if(mode == OV2640_MODE_UXGA) { + c.pclk_div = 12; + } + // if (sensor->xclk_freq_hz == 16000000) { + // c.pclk_div = c.pclk_div / 2; + // } + } else { +#if CONFIG_IDF_TARGET_ESP32 + c.clk_2x = 0; +#else + c.clk_2x = 1; +#endif c.clk_div = 7; + c.pclk_auto = 1; + c.pclk_div = 8; + if (mode == OV2640_MODE_CIF) { + c.clk_div = 3; + } else if(mode == OV2640_MODE_UXGA) { + c.pclk_div = 12; + } } + ESP_LOGI(TAG, "Set PLL: clk_2x: %u, clk_div: %u, pclk_auto: %u, pclk_div: %u", c.clk_2x, c.clk_div, c.pclk_auto, c.pclk_div); if (mode == OV2640_MODE_CIF) { regs = ov2640_settings_to_cif; - if(sensor->pixformat != PIXFORMAT_JPEG){ - c.clk_div = 3; - } } else if (mode == OV2640_MODE_SVGA) { regs = ov2640_settings_to_svga; } else { regs = ov2640_settings_to_uxga; - c.pclk_div = 12; } WRITE_REG_OR_RETURN(BANK_DSP, R_BYPASS, R_BYPASS_DSP_BYPAS); @@ -480,7 +495,6 @@ static int _set_pll(sensor_t *sensor, int bypass, int multiplier, int sys_div, i return -1; } -esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz); static int set_xclk(sensor_t *sensor, int timer, int xclk) { int ret = 0; @@ -531,6 +545,24 @@ static int init_status(sensor_t *sensor){ return 0; } +int ov2640_detect(int slv_addr, sensor_id_t *id) +{ + if (OV2640_SCCB_ADDR == slv_addr) { + SCCB_Write(slv_addr, 0xFF, 0x01);//bank sensor + uint16_t PID = SCCB_Read(slv_addr, 0x0A); + if (OV2640_PID == PID) { + id->PID = PID; + id->VER = SCCB_Read(slv_addr, REG_VER); + id->MIDL = SCCB_Read(slv_addr, REG_MIDL); + id->MIDH = SCCB_Read(slv_addr, REG_MIDH); + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + int ov2640_init(sensor_t *sensor) { sensor->reset = reset; diff --git a/code/components/esp32-camera-master/sensors/ov3660.c b/code/components/esp32-camera-master/sensors/ov3660.c index 723ec5c6..b9ebdba3 100644 --- a/code/components/esp32-camera-master/sensors/ov3660.c +++ b/code/components/esp32-camera-master/sensors/ov3660.c @@ -10,6 +10,7 @@ #include #include #include "sccb.h" +#include "xclk.h" #include "ov3660.h" #include "ov3660_regs.h" #include "ov3660_settings.h" @@ -142,7 +143,7 @@ static int calc_sysclk(int xclk, bool pll_bypass, int pll_multiplier, int pll_sy int PCLK = PLLCLK / 2 / ((pclk_manual && pclk_div)?pclk_div:1); int SYSCLK = PLLCLK / 4; - ESP_LOGD(TAG, "Calculated VCO: %d Hz, PLLCLK: %d Hz, SYSCLK: %d Hz, PCLK: %d Hz", VCO*1000, PLLCLK, SYSCLK, PCLK); + ESP_LOGI(TAG, "Calculated VCO: %d Hz, PLLCLK: %d Hz, SYSCLK: %d Hz, PCLK: %d Hz", VCO*1000, PLLCLK, SYSCLK, PCLK); return SYSCLK; } @@ -310,13 +311,13 @@ static int set_image_options(sensor_t *sensor) static int set_framesize(sensor_t *sensor, framesize_t framesize) { int ret = 0; - framesize_t old_framesize = sensor->status.framesize; - sensor->status.framesize = framesize; if(framesize > FRAMESIZE_QXGA){ - ESP_LOGE(TAG, "Invalid framesize: %u", framesize); - return -1; + ESP_LOGW(TAG, "Invalid framesize: %u", framesize); + framesize = FRAMESIZE_QXGA; } + framesize_t old_framesize = sensor->status.framesize; + sensor->status.framesize = framesize; uint16_t w = resolution[framesize].width; uint16_t h = resolution[framesize].height; aspect_ratio_t ratio = resolution[sensor->status.framesize].aspect_ratio; @@ -355,7 +356,7 @@ static int set_framesize(sensor_t *sensor, framesize_t framesize) } if (sensor->pixformat == PIXFORMAT_JPEG) { - if (framesize == FRAMESIZE_QXGA) { + if (framesize == FRAMESIZE_QXGA || sensor->xclk_freq_hz == 16000000) { //40MHz SYSCLK and 10MHz PCLK ret = set_pll(sensor, false, 24, 1, 3, false, 0, true, 8); } else { @@ -363,12 +364,16 @@ static int set_framesize(sensor_t *sensor, framesize_t framesize) ret = set_pll(sensor, false, 30, 1, 3, false, 0, true, 10); } } else { - if (framesize > FRAMESIZE_CIF) { - //10MHz SYSCLK and 10MHz PCLK (6.19 FPS) - ret = set_pll(sensor, false, 2, 1, 0, false, 0, true, 2); + //tuned for 16MHz XCLK and 8MHz PCLK + if (framesize > FRAMESIZE_HVGA) { + //8MHz SYSCLK and 8MHz PCLK (4.44 FPS) + ret = set_pll(sensor, false, 4, 1, 0, false, 2, true, 2); + } else if (framesize >= FRAMESIZE_QVGA) { + //16MHz SYSCLK and 8MHz PCLK (10.25 FPS) + ret = set_pll(sensor, false, 8, 1, 0, false, 2, true, 4); } else { - //25MHz SYSCLK and 10MHz PCLK (15.45 FPS) - ret = set_pll(sensor, false, 5, 1, 0, false, 0, true, 5); + //32MHz SYSCLK and 8MHz PCLK (17.77 FPS) + ret = set_pll(sensor, false, 8, 1, 0, false, 0, true, 8); } } @@ -953,7 +958,6 @@ static int _set_pll(sensor_t *sensor, int bypass, int multiplier, int sys_div, i return set_pll(sensor, bypass > 0, multiplier, sys_div, pre_div, root_2x > 0, seld5, pclk_manual > 0, pclk_div); } -esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz); static int set_xclk(sensor_t *sensor, int timer, int xclk) { int ret = 0; @@ -992,6 +996,22 @@ static int init_status(sensor_t *sensor) return 0; } +int ov3660_detect(int slv_addr, sensor_id_t *id) +{ + if (OV3660_SCCB_ADDR == slv_addr) { + uint8_t h = SCCB_Read16(slv_addr, 0x300A); + uint8_t l = SCCB_Read16(slv_addr, 0x300B); + uint16_t PID = (h<<8) | l; + if (OV3660_PID == PID) { + id->PID = PID; + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + int ov3660_init(sensor_t *sensor) { sensor->reset = reset; diff --git a/code/components/esp32-camera-master/sensors/ov5640.c b/code/components/esp32-camera-master/sensors/ov5640.c index e7adcf46..a32b374f 100644 --- a/code/components/esp32-camera-master/sensors/ov5640.c +++ b/code/components/esp32-camera-master/sensors/ov5640.c @@ -10,6 +10,7 @@ #include #include #include "sccb.h" +#include "xclk.h" #include "ov5640.h" #include "ov5640_regs.h" #include "ov5640_settings.h" @@ -196,7 +197,7 @@ static int calc_sysclk(int xclk, bool pll_bypass, int pll_multiplier, int pll_sy unsigned int SYSCLK = PLL_CLK / 4; - ESP_LOGD(TAG, "Calculated XVCLK: %d Hz, REFIN: %u Hz, VCO: %u Hz, PLL_CLK: %u Hz, SYSCLK: %u Hz, PCLK: %u Hz", xclk, REFIN, VCO, PLL_CLK, SYSCLK, PCLK); + ESP_LOGI(TAG, "Calculated XVCLK: %d Hz, REFIN: %u Hz, VCO: %u Hz, PLL_CLK: %u Hz, SYSCLK: %u Hz, PCLK: %u Hz", xclk, REFIN, VCO, PLL_CLK, SYSCLK, PCLK); return SYSCLK; } @@ -209,6 +210,7 @@ static int set_pll(sensor_t *sensor, bool bypass, uint8_t multiplier, uint8_t sy if(multiplier > 127){ multiplier &= 0xFE;//only even integers above 127 } + ESP_LOGI(TAG, "Set PLL: bypass: %u, multiplier: %u, sys_div: %u, pre_div: %u, root_2x: %u, pclk_root_div: %u, pclk_manual: %u, pclk_div: %u", bypass, multiplier, sys_div, pre_div, root_2x, pclk_root_div, pclk_manual, pclk_div); calc_sysclk(sensor->xclk_freq_hz, bypass, multiplier, sys_div, pre_div, root_2x, pclk_root_div, pclk_manual, pclk_div); @@ -432,14 +434,22 @@ static int set_framesize(sensor_t *sensor, framesize_t framesize) if (sensor->pixformat == PIXFORMAT_JPEG) { //10MHz PCLK uint8_t sys_mul = 200; - if(framesize < FRAMESIZE_QVGA){ + if(framesize < FRAMESIZE_QVGA || sensor->xclk_freq_hz == 16000000){ sys_mul = 160; } else if(framesize < FRAMESIZE_XGA){ sys_mul = 180; } ret = set_pll(sensor, false, sys_mul, 4, 2, false, 2, true, 4); + //Set PLL: bypass: 0, multiplier: sys_mul, sys_div: 4, pre_div: 2, root_2x: 0, pclk_root_div: 2, pclk_manual: 1, pclk_div: 4 } else { - ret = set_pll(sensor, false, 10, 1, 1, false, 1, true, 4); + //ret = set_pll(sensor, false, 8, 1, 1, false, 1, true, 4); + if (framesize > FRAMESIZE_HVGA) { + ret = set_pll(sensor, false, 10, 1, 2, false, 1, true, 2); + } else if (framesize >= FRAMESIZE_QVGA) { + ret = set_pll(sensor, false, 8, 1, 1, false, 1, true, 4); + } else { + ret = set_pll(sensor, false, 20, 1, 1, false, 1, true, 8); + } } if (ret == 0) { @@ -1025,7 +1035,6 @@ static int _set_pll(sensor_t *sensor, int bypass, int multiplier, int sys_div, i return ret; } -esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz); static int set_xclk(sensor_t *sensor, int timer, int xclk) { int ret = 0; @@ -1064,6 +1073,22 @@ static int init_status(sensor_t *sensor) return 0; } +int ov5640_detect(int slv_addr, sensor_id_t *id) +{ + if (OV5640_SCCB_ADDR == slv_addr) { + uint8_t h = SCCB_Read16(slv_addr, 0x300A); + uint8_t l = SCCB_Read16(slv_addr, 0x300B); + uint16_t PID = (h<<8) | l; + if (OV5640_PID == PID) { + id->PID = PID; + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + int ov5640_init(sensor_t *sensor) { sensor->reset = reset; diff --git a/code/components/esp32-camera-master/sensors/ov7670.c b/code/components/esp32-camera-master/sensors/ov7670.c index 285fe134..ee64de27 100644 --- a/code/components/esp32-camera-master/sensors/ov7670.c +++ b/code/components/esp32-camera-master/sensors/ov7670.c @@ -45,7 +45,7 @@ static struct regval_list ov7670_default_regs[] = { {CLKRC, 0x00}, {DBLV, 0x4A}, - {COM10, COM10_VSYNC_NEG | COM10_PCLK_MASK}, + {COM10, COM10_VSYNC_NEG | COM10_PCLK_FREE}, /* Improve white balance */ {COM4, 0x40}, @@ -393,6 +393,24 @@ static int init_status(sensor_t *sensor) static int set_dummy(sensor_t *sensor, int val){ return -1; } static int set_gainceiling_dummy(sensor_t *sensor, gainceiling_t val){ return -1; } +int ov7670_detect(int slv_addr, sensor_id_t *id) +{ + if (OV7670_SCCB_ADDR == slv_addr) { + SCCB_Write(slv_addr, 0xFF, 0x01);//bank sensor + uint16_t PID = SCCB_Read(slv_addr, 0x0A); + if (OV7670_PID == PID) { + id->PID = PID; + id->VER = SCCB_Read(slv_addr, REG_VER); + id->MIDL = SCCB_Read(slv_addr, REG_MIDL); + id->MIDH = SCCB_Read(slv_addr, REG_MIDH); + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + int ov7670_init(sensor_t *sensor) { // Set function pointers diff --git a/code/components/esp32-camera-master/sensors/ov7725.c b/code/components/esp32-camera-master/sensors/ov7725.c index bb315739..9418a82f 100644 --- a/code/components/esp32-camera-master/sensors/ov7725.c +++ b/code/components/esp32-camera-master/sensors/ov7725.c @@ -11,6 +11,7 @@ #include #include #include "sccb.h" +#include "xclk.h" #include "ov7725.h" #include "ov7725_regs.h" #include "freertos/FreeRTOS.h" @@ -58,10 +59,10 @@ static const uint8_t default_regs[][2] = { {COM8, 0xF0}, {COM6, 0xC5}, {COM9, 0x11}, - {COM10, COM10_VSYNC_NEG | COM10_PCLK_MASK}, //Invert VSYNC and MASK PCLK + {COM10, COM10_VSYNC_NEG | COM10_PCLK_FREE}, //Invert VSYNC and MASK PCLK {BDBASE, 0x7F}, {DBSTEP, 0x03}, - {AEW, 0x96}, + {AEW, 0x75}, {AEB, 0x64}, {VPT, 0xA1}, {EXHCL, 0x00}, @@ -493,7 +494,6 @@ static int set_gainceiling_dummy(sensor_t *sensor, gainceiling_t val){ return -1 static int set_res_raw(sensor_t *sensor, int startX, int startY, int endX, int endY, int offsetX, int offsetY, int totalX, int totalY, int outputX, int outputY, bool scale, bool binning){return -1;} static int _set_pll(sensor_t *sensor, int bypass, int multiplier, int sys_div, int root_2x, int pre_div, int seld5, int pclk_manual, int pclk_div){return -1;} -esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz); static int set_xclk(sensor_t *sensor, int timer, int xclk) { int ret = 0; @@ -502,6 +502,24 @@ static int set_xclk(sensor_t *sensor, int timer, int xclk) return ret; } +int ov7725_detect(int slv_addr, sensor_id_t *id) +{ + if (OV7725_SCCB_ADDR == slv_addr) { + SCCB_Write(slv_addr, 0xFF, 0x01);//bank sensor + uint16_t PID = SCCB_Read(slv_addr, 0x0A); + if (OV7725_PID == PID) { + id->PID = PID; + id->VER = SCCB_Read(slv_addr, REG_VER); + id->MIDL = SCCB_Read(slv_addr, REG_MIDL); + id->MIDH = SCCB_Read(slv_addr, REG_MIDH); + return PID; + } else { + ESP_LOGI(TAG, "Mismatch PID=0x%x", PID); + } + } + return 0; +} + int ov7725_init(sensor_t *sensor) { // Set function pointers diff --git a/code/components/esp32-camera-master/sensors/private_include/gc0308.h b/code/components/esp32-camera-master/sensors/private_include/gc0308.h new file mode 100644 index 00000000..edffca1e --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc0308.h @@ -0,0 +1,31 @@ +#pragma once + +#include "sensor.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int gc0308_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ +int gc0308_init(sensor_t *sensor); + +#ifdef __cplusplus +} +#endif diff --git a/code/components/esp32-camera-master/sensors/private_include/gc0308_regs.h b/code/components/esp32-camera-master/sensors/private_include/gc0308_regs.h new file mode 100644 index 00000000..f1cb4532 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc0308_regs.h @@ -0,0 +1,25 @@ +/* + * GC0308 register definitions. + */ +#ifndef __GC0308_REG_REGS_H__ +#define __GC0308_REG_REGS_H__ + +#define RESET_RELATED 0xfe // Bit[7]: Software reset + // Bit[6:5]: NA + // Bit[4]: CISCTL_restart_n + // Bit[3:1]: NA + // Bit[0]: page select + // 0:page0 + // 1:page1 + + +// page0: + + + +/** + * @brief register value + */ + + +#endif // __GC0308_REG_REGS_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/gc0308_settings.h b/code/components/esp32-camera-master/sensors/private_include/gc0308_settings.h new file mode 100644 index 00000000..32ef3816 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc0308_settings.h @@ -0,0 +1,245 @@ +#ifndef _GC0308_SETTINGS_H_ +#define _GC0308_SETTINGS_H_ + +#include + +#define REG_DLY 0xffff +#define REGLIST_TAIL 0x0000 /* Array end token */ + +static const uint16_t gc0308_sensor_default_regs[][2] = { + {0xfe, 0x00}, + {0xec, 0x20}, + {0x05, 0x00}, + {0x06, 0x00}, + {0x07, 0x00}, + {0x08, 0x00}, + {0x09, 0x01}, + {0x0a, 0xe8}, + {0x0b, 0x02}, + {0x0c, 0x88}, + {0x0d, 0x02}, + {0x0e, 0x02}, + {0x10, 0x26}, + {0x11, 0x0d}, + {0x12, 0x2a}, + {0x13, 0x00}, + {0x14, 0x11}, + {0x15, 0x0a}, + {0x16, 0x05}, + {0x17, 0x01}, + {0x18, 0x44}, + {0x19, 0x44}, + {0x1a, 0x2a}, + {0x1b, 0x00}, + {0x1c, 0x49}, + {0x1d, 0x9a}, + {0x1e, 0x61}, + {0x1f, 0x00}, //pad drv <=24MHz, use 0x00 is ok + {0x20, 0x7f}, + {0x21, 0xfa}, + {0x22, 0x57}, + {0x24, 0xa2}, //YCbYCr + {0x25, 0x0f}, + {0x26, 0x03}, // 0x01 + {0x28, 0x00}, + {0x2d, 0x0a}, + {0x2f, 0x01}, + {0x30, 0xf7}, + {0x31, 0x50}, + {0x32, 0x00}, + {0x33, 0x28}, + {0x34, 0x2a}, + {0x35, 0x28}, + {0x39, 0x04}, + {0x3a, 0x20}, + {0x3b, 0x20}, + {0x3c, 0x00}, + {0x3d, 0x00}, + {0x3e, 0x00}, + {0x3f, 0x00}, + {0x50, 0x14}, // 0x14 + {0x52, 0x41}, + {0x53, 0x80}, + {0x54, 0x80}, + {0x55, 0x80}, + {0x56, 0x80}, + {0x8b, 0x20}, + {0x8c, 0x20}, + {0x8d, 0x20}, + {0x8e, 0x14}, + {0x8f, 0x10}, + {0x90, 0x14}, + {0x91, 0x3c}, + {0x92, 0x50}, +//{0x8b,0x10}, +//{0x8c,0x10}, +//{0x8d,0x10}, +//{0x8e,0x10}, +//{0x8f,0x10}, +//{0x90,0x10}, +//{0x91,0x3c}, +//{0x92,0x50}, + {0x5d, 0x12}, + {0x5e, 0x1a}, + {0x5f, 0x24}, + {0x60, 0x07}, + {0x61, 0x15}, + {0x62, 0x08}, // 0x08 + {0x64, 0x03}, // 0x03 + {0x66, 0xe8}, + {0x67, 0x86}, + {0x68, 0x82}, + {0x69, 0x18}, + {0x6a, 0x0f}, + {0x6b, 0x00}, + {0x6c, 0x5f}, + {0x6d, 0x8f}, + {0x6e, 0x55}, + {0x6f, 0x38}, + {0x70, 0x15}, + {0x71, 0x33}, + {0x72, 0xdc}, + {0x73, 0x00}, + {0x74, 0x02}, + {0x75, 0x3f}, + {0x76, 0x02}, + {0x77, 0x38}, // 0x47 + {0x78, 0x88}, + {0x79, 0x81}, + {0x7a, 0x81}, + {0x7b, 0x22}, + {0x7c, 0xff}, + {0x93, 0x48}, //color matrix default + {0x94, 0x02}, + {0x95, 0x07}, + {0x96, 0xe0}, + {0x97, 0x40}, + {0x98, 0xf0}, + {0xb1, 0x40}, + {0xb2, 0x40}, + {0xb3, 0x40}, //0x40 + {0xb6, 0xe0}, + {0xbd, 0x38}, + {0xbe, 0x36}, + {0xd0, 0xCB}, + {0xd1, 0x10}, + {0xd2, 0x90}, + {0xd3, 0x48}, + {0xd5, 0xF2}, + {0xd6, 0x16}, + {0xdb, 0x92}, + {0xdc, 0xA5}, + {0xdf, 0x23}, + {0xd9, 0x00}, + {0xda, 0x00}, + {0xe0, 0x09}, + {0xed, 0x04}, + {0xee, 0xa0}, + {0xef, 0x40}, + {0x80, 0x03}, + + {0x9F, 0x10}, + {0xA0, 0x20}, + {0xA1, 0x38}, + {0xA2, 0x4e}, + {0xA3, 0x63}, + {0xA4, 0x76}, + {0xA5, 0x87}, + {0xA6, 0xa2}, + {0xA7, 0xb8}, + {0xA8, 0xca}, + {0xA9, 0xd8}, + {0xAA, 0xe3}, + {0xAB, 0xeb}, + {0xAC, 0xf0}, + {0xAD, 0xF8}, + {0xAE, 0xFd}, + {0xAF, 0xFF}, + + {0xc0, 0x00}, + {0xc1, 0x10}, + {0xc2, 0x1c}, + {0xc3, 0x30}, + {0xc4, 0x43}, + {0xc5, 0x54}, + {0xc6, 0x65}, + {0xc7, 0x75}, + {0xc8, 0x93}, + {0xc9, 0xB0}, + {0xca, 0xCB}, + {0xcb, 0xE6}, + {0xcc, 0xFF}, + {0xf0, 0x02}, + {0xf1, 0x01}, + {0xf2, 0x02}, + {0xf3, 0x30}, + {0xf7, 0x04}, + {0xf8, 0x02}, + {0xf9, 0x9f}, + {0xfa, 0x78}, + {0xfe, 0x01}, + {0x00, 0xf5}, + {0x02, 0x20}, + {0x04, 0x10}, + {0x05, 0x08}, + {0x06, 0x20}, + {0x08, 0x0a}, + {0x0a, 0xa0}, + {0x0b, 0x60}, + {0x0c, 0x08}, + {0x0e, 0x44}, + {0x0f, 0x32}, + {0x10, 0x41}, + {0x11, 0x37}, + {0x12, 0x22}, + {0x13, 0x19}, + {0x14, 0x44}, + {0x15, 0x44}, + {0x16, 0xc2}, + {0x17, 0xA8}, + {0x18, 0x18}, + {0x19, 0x50}, + {0x1a, 0xd8}, + {0x1b, 0xf5}, + {0x70, 0x40}, + {0x71, 0x58}, + {0x72, 0x30}, + {0x73, 0x48}, + {0x74, 0x20}, + {0x75, 0x60}, + {0x77, 0x20}, + {0x78, 0x32}, + {0x30, 0x03}, + {0x31, 0x40}, + {0x32, 0x10}, + {0x33, 0xe0}, + {0x34, 0xe0}, + {0x35, 0x00}, + {0x36, 0x80}, + {0x37, 0x00}, + {0x38, 0x04}, + {0x39, 0x09}, + {0x3a, 0x12}, + {0x3b, 0x1C}, + {0x3c, 0x28}, + {0x3d, 0x31}, + {0x3e, 0x44}, + {0x3f, 0x57}, + {0x40, 0x6C}, + {0x41, 0x81}, + {0x42, 0x94}, + {0x43, 0xA7}, + {0x44, 0xB8}, + {0x45, 0xD6}, + {0x46, 0xEE}, + {0x47, 0x0d}, + {0x62, 0xf7}, + {0x63, 0x68}, + {0x64, 0xd3}, + {0x65, 0xd3}, + {0x66, 0x60}, + {0xfe, 0x00}, + {REGLIST_TAIL, 0x00}, +}; + +#endif diff --git a/code/components/esp32-camera-master/sensors/private_include/gc032a.h b/code/components/esp32-camera-master/sensors/private_include/gc032a.h new file mode 100644 index 00000000..7679f070 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc032a.h @@ -0,0 +1,31 @@ +/* + * + * GC032A driver. + * + */ +#ifndef __GC032A_H__ +#define __GC032A_H__ + +#include "sensor.h" + +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int gc032a_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ +int gc032a_init(sensor_t *sensor); + +#endif // __GC032A_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/gc032a_regs.h b/code/components/esp32-camera-master/sensors/private_include/gc032a_regs.h new file mode 100644 index 00000000..5de59d1d --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc032a_regs.h @@ -0,0 +1,82 @@ +/* + * GC032A register definitions. + */ +#ifndef __GC032A_REG_REGS_H__ +#define __GC032A_REG_REGS_H__ + +#define SENSOR_ID_HIGH 0XF0 +#define SENSOR_ID_LOW 0XF1 +#define PAD_VB_HIZ_MODE 0XF2 +#define SYNC_OUTPUT 0XF3 +#define I2C_CONFIG 0XF4 +#define PLL_MODE1 0XF7 +#define PLL_MODE2 0XF8 +#define CM_MODE 0XF9 +#define ISP_DIV_MODE 0XFA +#define I2C_DEVICE_ID 0XFB +#define ANALOG_PWC 0XFC +#define ISP_DIV_MODE2 0XFD +#define RESET_RELATED 0XFE // Bit[7]: Software reset + // Bit[6]: cm reset + // Bit[5]: spi reset + // Bit[4]: CISCTL_restart_n + // Bit[3]: PLL_rst + // Bit[2:0]: page select + // 000:page0 + // 001:page1 + // 010:page2 + // 011:page3 + +//----page0----------------------------- +#define P0_EXPOSURE_HIGH 0X03 +#define P0_EXPOSURE_LOW 0X04 +#define P0_HB_HIGH 0X05 +#define P0_HB_LOW 0X06 +#define P0_VB_HIGH 0X07 +#define P0_VB_LOW 0X08 +#define P0_ROW_START_HIGH 0X09 +#define P0_ROW_START_LOW 0X0A +#define P0_COLUMN_START_HIGH 0X0B +#define P0_COLUMN_START_LOW 0X0C +#define P0_WINDOW_HEIGHT_HIGH 0X0D +#define P0_WINDOW_HEIGHT_LOW 0X0E +#define P0_WINDOW_WIDTH_HIGH 0X0F +#define P0_WINDOW_WIDTH_LOW 0X10 +#define P0_SH_DELAY 0X11 +#define P0_VS_ST 0X12 +#define P0_VS_ET 0X13 +#define P0_CISCTL_MODE1 0X17 + +#define P0_BLOCK_ENABLE_1 0X40 +#define P0_AAAA_ENABLE 0X42 +#define P0_SPECIAL_EFFECT 0X43 +#define P0_SYNC_MODE 0X46 +#define P0_GAIN_CODE 0X48 +#define P0_DEBUG_MODE2 0X4C +#define P0_WIN_MODE 0X50 +#define P0_OUT_WIN_Y1_HIGH 0X51 +#define P0_OUT_WIN_Y1_LOW 0X52 +#define P0_OUT_WIN_X1_HIGH 0X53 +#define P0_OUT_WIN_X1_LOW 0X54 +#define P0_OUT_WIN_HEIGHT_HIGH 0X55 +#define P0_OUT_WIN_HEIGHT_LOW 0X56 +#define P0_OUT_WIN_WIDTH_HIGH 0X57 +#define P0_OUT_WIN_WIDTH_LOW 0X58 + +#define P0_GLOBAL_SATURATION 0XD0 +#define P0_SATURATION_CB 0XD1 +#define P0_SATURATION_CR 0XD2 +#define P0_LUMA_CONTRAST 0XD3 +#define P0_CONTRAST_CENTER 0XD4 +#define P0_LUMA_OFFSET 0XD5 +#define P0_FIXED_CB 0XDA +#define P0_FIXED_CR 0XDB + +//----page3----------------------------- +#define P3_IMAGE_WIDTH_LOW 0X5B +#define P3_IMAGE_WIDTH_HIGH 0X5C +#define P3_IMAGE_HEIGHT_LOW 0X5D +#define P3_IMAGE_HEIGHT_HIGH 0X5E + + +#endif //__GC032A_REG_REGS_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/gc032a_settings.h b/code/components/esp32-camera-master/sensors/private_include/gc032a_settings.h new file mode 100644 index 00000000..a19ffc7c --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc032a_settings.h @@ -0,0 +1,401 @@ +#ifndef _GC032A_SETTINGS_H_ +#define _GC032A_SETTINGS_H_ + +#include +#include +#include "esp_attr.h" +#include "gc032a_regs.h" + + +#define REG_DLY 0xffff +#define REGLIST_TAIL 0x0000 + + +/* + * The default register settings, as obtained from OmniVision. There + * is really no making sense of most of these - lots of "reserved" values + * and such. + * + */ +static const uint16_t gc032a_default_regs[][2] = { + /*System*/ + {0xf3, 0xff}, + {0xf5, 0x06}, + {0xf7, 0x01}, + {0xf8, 0x03}, + {0xf9, 0xce}, + {0xfa, 0x00}, + {0xfc, 0x02}, + {0xfe, 0x02}, + {0x81, 0x03}, + + {0xfe, 0x00}, + {0x77, 0x64}, + {0x78, 0x40}, + {0x79, 0x60}, + /*ANALOG & CISCTL*/ + {0xfe, 0x00}, + {0x03, 0x01}, + {0x04, 0xce}, + {0x05, 0x01}, + {0x06, 0xad}, + {0x07, 0x00}, + {0x08, 0x10}, + {0x0a, 0x00}, + {0x0c, 0x00}, + {0x0d, 0x01}, + {0x0e, 0xe8}, // height 488 + {0x0f, 0x02}, + {0x10, 0x88}, // width 648 + {0x17, 0x54}, + {0x19, 0x08}, + {0x1a, 0x0a}, + {0x1f, 0x40}, + {0x20, 0x30}, + {0x2e, 0x80}, + {0x2f, 0x2b}, + {0x30, 0x1a}, + {0xfe, 0x02}, + {0x03, 0x02}, + {0x05, 0xd7}, + {0x06, 0x60}, + {0x08, 0x80}, + {0x12, 0x89}, + + /*blk*/ + {0xfe, 0x00}, + {0x18, 0x02}, + {0xfe, 0x02}, + {0x40, 0x22}, + {0x45, 0x00}, + {0x46, 0x00}, + {0x49, 0x20}, + {0x4b, 0x3c}, + {0x50, 0x20}, + {0x42, 0x10}, + + /*isp*/ + {0xfe, 0x01}, + {0x0a, 0xc5}, + {0x45, 0x00}, + {0xfe, 0x00}, + {0x40, 0xff}, + {0x41, 0x25}, + {0x42, 0xcf}, + {0x43, 0x10}, + {0x44, 0x83}, + {0x46, 0x23}, + {0x49, 0x03}, + {0x52, 0x02}, + {0x54, 0x00}, + {0xfe, 0x02}, + {0x22, 0xf6}, + + /*Shading*/ + {0xfe, 0x01}, + {0xc1, 0x38}, + {0xc2, 0x4c}, + {0xc3, 0x00}, + {0xc4, 0x32}, + {0xc5, 0x24}, + {0xc6, 0x16}, + {0xc7, 0x08}, + {0xc8, 0x08}, + {0xc9, 0x00}, + {0xca, 0x20}, + {0xdc, 0x8a}, + {0xdd, 0xa0}, + {0xde, 0xa6}, + {0xdf, 0x75}, + + /*AWB*/ + {0xfe, 0x01}, + {0x7c, 0x09}, + {0x65, 0x06}, + {0x7c, 0x08}, + {0x56, 0xf4}, + {0x66, 0x0f}, + {0x67, 0x84}, + {0x6b, 0x80}, + {0x6d, 0x12}, + {0x6e, 0xb0}, + {0x86, 0x00}, + {0x87, 0x00}, + {0x88, 0x00}, + {0x89, 0x00}, + {0x8a, 0x00}, + {0x8b, 0x00}, + {0x8c, 0x00}, + {0x8d, 0x00}, + {0x8e, 0x00}, + {0x8f, 0x00}, + {0x90, 0x00}, + {0x91, 0x00}, + {0x92, 0xf4}, + {0x93, 0xd5}, + {0x94, 0x50}, + {0x95, 0x0f}, + {0x96, 0xf4}, + {0x97, 0x2d}, + {0x98, 0x0f}, + {0x99, 0xa6}, + {0x9a, 0x2d}, + {0x9b, 0x0f}, + {0x9c, 0x59}, + {0x9d, 0x2d}, + {0x9e, 0xaa}, + {0x9f, 0x67}, + {0xa0, 0x59}, + {0xa1, 0x00}, + {0xa2, 0x00}, + {0xa3, 0x0a}, + {0xa4, 0x00}, + {0xa5, 0x00}, + {0xa6, 0xd4}, + {0xa7, 0x9f}, + {0xa8, 0x55}, + {0xa9, 0xd4}, + {0xaa, 0x9f}, + {0xab, 0xac}, + {0xac, 0x9f}, + {0xad, 0x55}, + {0xae, 0xd4}, + {0xaf, 0xac}, + {0xb0, 0xd4}, + {0xb1, 0xa3}, + {0xb2, 0x55}, + {0xb3, 0xd4}, + {0xb4, 0xac}, + {0xb5, 0x00}, + {0xb6, 0x00}, + {0xb7, 0x05}, + {0xb8, 0xd6}, + {0xb9, 0x8c}, + + /*CC*/ + {0xfe, 0x01}, + {0xd0, 0x40}, + {0xd1, 0xf8}, + {0xd2, 0x00}, + {0xd3, 0xfa}, + {0xd4, 0x45}, + {0xd5, 0x02}, + + {0xd6, 0x30}, + {0xd7, 0xfa}, + {0xd8, 0x08}, + {0xd9, 0x08}, + {0xda, 0x58}, + {0xdb, 0x02}, + {0xfe, 0x00}, + + /*Gamma*/ + {0xfe, 0x00}, + {0xba, 0x00}, + {0xbb, 0x04}, + {0xbc, 0x0a}, + {0xbd, 0x0e}, + {0xbe, 0x22}, + {0xbf, 0x30}, + {0xc0, 0x3d}, + {0xc1, 0x4a}, + {0xc2, 0x5d}, + {0xc3, 0x6b}, + {0xc4, 0x7a}, + {0xc5, 0x85}, + {0xc6, 0x90}, + {0xc7, 0xa5}, + {0xc8, 0xb5}, + {0xc9, 0xc2}, + {0xca, 0xcc}, + {0xcb, 0xd5}, + {0xcc, 0xde}, + {0xcd, 0xea}, + {0xce, 0xf5}, + {0xcf, 0xff}, + + /*Auto Gamma*/ + {0xfe, 0x00}, + {0x5a, 0x08}, + {0x5b, 0x0f}, + {0x5c, 0x15}, + {0x5d, 0x1c}, + {0x5e, 0x28}, + {0x5f, 0x36}, + {0x60, 0x45}, + {0x61, 0x51}, + {0x62, 0x6a}, + {0x63, 0x7d}, + {0x64, 0x8d}, + {0x65, 0x98}, + {0x66, 0xa2}, + {0x67, 0xb5}, + {0x68, 0xc3}, + {0x69, 0xcd}, + {0x6a, 0xd4}, + {0x6b, 0xdc}, + {0x6c, 0xe3}, + {0x6d, 0xf0}, + {0x6e, 0xf9}, + {0x6f, 0xff}, + + /*Gain*/ + {0xfe, 0x00}, + {0x70, 0x50}, + + /*AEC*/ + {0xfe, 0x00}, + {0x4f, 0x01}, + {0xfe, 0x01}, + {0x0d, 0x00}, + {0x12, 0xa0}, + {0x13, 0x3a}, + {0x44, 0x04}, + {0x1f, 0x30}, + {0x20, 0x40}, + {0x26, 0x9a}, + {0x3e, 0x20}, + {0x3f, 0x2d}, + {0x40, 0x40}, + {0x41, 0x5b}, + {0x42, 0x82}, + {0x43, 0xb7}, + {0x04, 0x0a}, + {0x02, 0x79}, + {0x03, 0xc0}, + + /*measure window*/ + {0xfe, 0x01}, + {0xcc, 0x08}, + {0xcd, 0x08}, + {0xce, 0xa4}, + {0xcf, 0xec}, + + /*DNDD*/ + {0xfe, 0x00}, + {0x81, 0xb8}, + {0x82, 0x12}, + {0x83, 0x0a}, + {0x84, 0x01}, + {0x86, 0x50}, + {0x87, 0x18}, + {0x88, 0x10}, + {0x89, 0x70}, + {0x8a, 0x20}, + {0x8b, 0x10}, + {0x8c, 0x08}, + {0x8d, 0x0a}, + + /*Intpee*/ + {0xfe, 0x00}, + {0x8f, 0xaa}, + {0x90, 0x9c}, + {0x91, 0x52}, + {0x92, 0x03}, + {0x93, 0x03}, + {0x94, 0x08}, + {0x95, 0x44}, + {0x97, 0x00}, + {0x98, 0x00}, + + /*ASDE*/ + {0xfe, 0x00}, + {0xa1, 0x30}, + {0xa2, 0x41}, + {0xa4, 0x30}, + {0xa5, 0x20}, + {0xaa, 0x30}, + {0xac, 0x32}, + + /*YCP*/ + {0xfe, 0x00}, + {0xd1, 0x3c}, + {0xd2, 0x3c}, + {0xd3, 0x38}, + {0xd6, 0xf4}, + {0xd7, 0x1d}, + {0xdd, 0x73}, + {0xde, 0x84}, + + /*Banding*/ + {0xfe, 0x00}, + {0x05, 0x01}, + {0x06, 0xad}, + {0x07, 0x00}, + {0x08, 0x10}, + + {0xfe, 0x01}, + {0x25, 0x00}, + {0x26, 0x9a}, + + {0x27, 0x01}, + {0x28, 0xce}, + {0x29, 0x02}, + {0x2a, 0x68}, + {0x2b, 0x02}, + {0x2c, 0x68}, + {0x2d, 0x07}, + {0x2e, 0xd2}, + {0x2f, 0x0b}, + {0x30, 0x6e}, + {0x31, 0x0e}, + {0x32, 0x70}, + {0x33, 0x12}, + {0x34, 0x0c}, + {0x3c, 0x30}, + + /*Analog&Cisctl*/ + {0xfe, 0x00}, + {0x05, 0x01}, + {0x06, 0xa0}, + {0x07, 0x00}, + {0x08, 0x20}, + {0x0a, 0x78}, + {0x0c, 0xa0}, + {0x0d, 0x00}, //window_height [8] + {0x0e, 0xf8}, //window_height [7:0] 248 + {0x0f, 0x01}, //window_width [9:8] + {0x10, 0x48}, //window_width [7:0] 328 + + {0x55, 0x00}, + {0x56, 0xf0}, // 240 + {0x57, 0x01}, + {0x58, 0x40}, // 320 + + /*SPI*/ + {0xfe, 0x03}, + {0x5b, 0x40}, + {0x5c, 0x01}, + {0x5d, 0xf0}, + {0x5e, 0x00}, + + /*AEC*/ + {0xfe, 0x01}, + {0x25, 0x00}, //step + {0x26, 0x63}, + {0x27, 0x01}, + {0x28, 0x29}, + {0x29, 0x01}, + {0x2a, 0x29}, + {0x2b, 0x01}, + {0x2c, 0x29}, + {0x2d, 0x01}, + {0x2e, 0x29}, + {0x2f, 0x01}, + {0x30, 0x29}, + {0x31, 0x01}, + {0x32, 0x29}, + {0x33, 0x01}, + {0x34, 0x29}, + {0x3c, 0x00}, + + /*measure window*/ + {0xfe, 0x01}, + {0xcc, 0x04}, + {0xcd, 0x04}, + {0xce, 0x72}, + {0xcf, 0x52}, + {REGLIST_TAIL, 0x00}, +}; + +#endif diff --git a/code/components/esp32-camera-master/sensors/private_include/gc2145.h b/code/components/esp32-camera-master/sensors/private_include/gc2145.h new file mode 100644 index 00000000..6c5b60f7 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc2145.h @@ -0,0 +1,27 @@ + +#ifndef __GC2145_H__ +#define __GC2145_H__ + +#include "sensor.h" + +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int gc2145_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ +int gc2145_init(sensor_t *sensor); + +#endif // __GC2145_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/gc2145_regs.h b/code/components/esp32-camera-master/sensors/private_include/gc2145_regs.h new file mode 100644 index 00000000..b034a168 --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc2145_regs.h @@ -0,0 +1,85 @@ +/* + * GC2145 register definitions. + */ +#ifndef __GC2145_REG_REGS_H__ +#define __GC2145_REG_REGS_H__ + +#define CHIP_ID_HIGH 0XF0 +#define CHIP_ID_LOW 0XF1 +#define PLL_MODE1 0XF7 +#define PLL_MODE2 0XF8 +#define CM_MODE 0XF9 +#define CLK_DIV_MODE 0XFA +#define RESET_RELATED 0xfe // Bit[7]: Software reset + // Bit[6]: cm reset + // Bit[5]: mipi reset + // Bit[4]: CISCTL_restart_n + // Bit[3]: NA + // Bit[2:0]: page select + // 000:page0 + // 001:page1 + // 010:page2 + // 011:page3 + +//-page0---------------- + +#define P0_EXPOSURE_HIGH 0X03 +#define P0_EXPOSURE_LOW 0X04 +#define P0_HB_HIGH 0X05 +#define P0_HB_LOW 0X06 +#define P0_VB_HIGH 0X07 +#define P0_VB_LOW 0X08 +#define P0_ROW_START_HIGH 0X09 +#define P0_ROW_START_LOW 0X0A +#define P0_COL_START_HIGH 0X0B +#define P0_COL_START_LOW 0X0C + +#define P0_WIN_HEIGHT_HIGH 0X0D +#define P0_WIN_HEIGHT_LOW 0X0E +#define P0_WIN_WIDTH_HIGH 0X0F +#define P0_WIN_WIDTH_LOW 0X10 +#define P0_ANALOG_MODE1 0X17 +#define P0_ANALOG_MODE2 0X18 + +#define P0_SPECIAL_EFFECT 0X83 +#define P0_OUTPUT_FORMAT 0x84 // Format select + // Bit[7]:YUV420 row switch + // Bit[6]:YUV420 col switch + // Bit[7]:YUV420_legacy + // Bit[4:0]:output data mode + // 5’h00 Cb Y Cr Y + // 5’h01 Cr Y Cb Y + // 5’h02 Y Cb Y Cr + // 5’h03 Y Cr Y Cb + // 5’h04 LSC bypass, C/Y + // 5’h05 LSC bypass, Y/C + // 5’h06 RGB 565 + // 5’h0f bypass 10bits + // 5’h17 switch odd/even column /row to controls output Bayer pattern + // 00 RGBG + // 01 RGGB + // 10 BGGR + // 11 GBRG + // 5'h18 DNDD out mode + // 5'h19 LSC out mode + // 5;h1b EEINTP out mode +#define P0_FRAME_START 0X85 +#define P0_SYNC_MODE 0X86 +#define P0_MODULE_GATING 0X88 +#define P0_BYPASS_MODE 0X89 +#define P0_DEBUG_MODE2 0X8C +#define P0_DEBUG_MODE3 0X8D +#define P0_CROP_ENABLE 0X90 +#define P0_OUT_WIN_Y1_HIGH 0X91 +#define P0_OUT_WIN_Y1_LOW 0X92 +#define P0_OUT_WIN_X1_HIGH 0X93 +#define P0_OUT_WIN_X1_LOW 0X94 +#define P0_OUT_WIN_HEIGHT_HIGH 0X95 +#define P0_OUT_WIN_HEIGHT_LOW 0X96 +#define P0_OUT_WIN_WIDTH_HIGH 0X97 +#define P0_OUT_WIN_WIDTH_LOW 0X98 +#define P0_SUBSAMPLE 0X99 +#define P0_SUBSAMPLE_MODE 0X9A + + +#endif // __GC2145_REG_REGS_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/gc2145_settings.h b/code/components/esp32-camera-master/sensors/private_include/gc2145_settings.h new file mode 100644 index 00000000..879fd53b --- /dev/null +++ b/code/components/esp32-camera-master/sensors/private_include/gc2145_settings.h @@ -0,0 +1,719 @@ + +#include + +#define REG_DLY 0xffff +#define REGLIST_TAIL 0x0000 /* Array end token */ + +static const uint16_t gc2145_default_init_regs[][2] = { + {0xfe, 0xf0}, + {0xfe, 0xf0}, + {0xfe, 0xf0}, + + {0xfc, 0x06}, + {0xf6, 0x00}, + + {0xf7, 0x1d}, //37 //17 //37 //1d//05 + {0xf8, 0x83}, //87 //83 //82 + {0xfa, 0x00}, + {0xf9, 0xfe}, //ff + {0xfd, 0x00}, + {0xc2, 0x00}, + {0xf2, 0x0f}, +////////////////////////////////////////////////////// +//////////////////// Analog & Cisctl //////////////// +////////////////////////////////////////////////////// + {0xfe, 0x00}, + + {0x03, 0x04}, //exp time + {0x04, 0x62}, //exp time + + {0x05, 0x01}, //00 //hb[11:8] + {0x06, 0x3b}, //0b //hb + + {0x09, 0x00}, //row start + {0x0a, 0x00}, // + {0x0b, 0x00}, //col start + {0x0c, 0x00}, + {0x0d, 0x04}, //height + {0x0e, 0xc0}, + {0x0f, 0x06}, //width + {0x10, 0x52}, + + {0x12, 0x2e}, //sh_delay 太短 YUV出图异常 + {0x17, 0x14}, //CISCTL Mode1 [1:0]mirror flip + {0x18, 0x22}, //sdark mode + {0x19, 0x0f}, // AD pipe number + {0x1a, 0x01}, //AD manual switch mode + + {0x1b, 0x4b}, //48 restg Width,SH width + {0x1c, 0x07}, //06 帧率快后,横条纹 //12 //TX Width,Space Width + {0x1d, 0x10}, //double reset + {0x1e, 0x88}, //90//98 //fix 竖线//Analog Mode1,TX high,Coln_r + {0x1f, 0x78}, //78 //38 //18 //Analog Mode2,txlow + {0x20, 0x03}, //07 //Analog Mode3,comv,ad_clk mode + {0x21, 0x40}, //10//20//40 //fix 灯管横条纹 + {0x22, 0xa0}, //d0//f0 //a2 //Vref vpix FPN严重 + {0x24, 0x1e}, + {0x25, 0x01}, //col sel + {0x26, 0x10}, //Analog PGA gain1 + {0x2d, 0x60}, //40//40 //txl drv mode + {0x30, 0x01}, //Analog Mode4 + {0x31, 0x90}, //b0//70 // Analog Mode7 [7:5]rsgh_r灯管横条纹[4:3]isp_g + {0x33, 0x06}, //03//02//01 //EQ_hstart_width + {0x34, 0x01}, +// +/////////////////////////////////////////////////// +//////////////////// ISP reg ////////////////////// +////////////////////////////////////////////////////// + {0x80, 0xff}, //outdoor gamma_en, GAMMA_en, CC_en, EE_en, INTP_en, DN_en, DD_en,LSC_en + {0x81, 0x24}, //26//24 //BLK dither mode, ll_y_en ,skin_en, edge SA, new_skin_mode, autogray_en,ll_gamma_en,BFF test image + {0x82, 0xfa}, //FA //auto_SA, auto_EE, auto_DN, auto_DD, auto_LSC, ABS_en, AWB_en, NA + {0x83, 0x00}, //special_effect + {0x84, 0x02}, //output format + {0x86, 0x03}, //c2 //46 //c2 //sync mode + {0x88, 0x03}, //[1]ctl_auto_gating [0]out_auto_gating + {0x89, 0x03}, //bypass disable + {0x85, 0x30}, //60//frame start cut + {0x8a, 0x00}, //ISP_quiet_mode,close aaa pclk,BLK gate mode,exception,close first pipe clock,close dndd clock,close intp clock,DIV_gatedclk_en + {0x8b, 0x00}, //[7:6]BFF_gate_mode,[5]BLK switch gain,[4]protect exp,[3:2]pipe gate mode,[1]not split sram,[0]dark current update + + {0xb0, 0x55}, //60 //global gain + {0xc3, 0x00}, //[7:4]auto_exp_gamma_th1[11:8],[3:0]auto_exp_gamma_th2[11:8] + {0xc4, 0x80}, //auto_exp_gamma_th1[7:0] into + {0xc5, 0x90}, //auto_exp_gamma_th2[7:0] out //outdoor gamma + {0xc6, 0x38}, //auto_gamma_th1 + {0xc7, 0x40}, //auto_gamma_th2 + + {0xec, 0x06}, //measure window + {0xed, 0x04}, + {0xee, 0x60}, //16 col + {0xef, 0x90}, //8 row + + {0xb6, 0x01}, //[0]aec en + + {0x90, 0x01}, //crop + {0x91, 0x00}, + {0x92, 0x00}, + {0x93, 0x00}, + {0x94, 0x00}, //08 + {0x95, 0x04}, + {0x96, 0xb0}, + {0x97, 0x06}, + {0x98, 0x40}, + +/////////////////////////////////////////////// +/////////// BLK //////////////////////// +/////////////////////////////////////////////// + {0x18, 0x02}, + {0x40, 0x42}, //2b //27 + {0x41, 0x00}, //80 //dark row sel + {0x43, 0x54}, //[7:4]BLK start not smooth [3:0]output start frame + + {0x5e, 0x00}, //00//10 //18 + {0x5f, 0x00}, //00//10 //18 + {0x60, 0x00}, //00//10 //18 + {0x61, 0x00}, //00///10 //18 + {0x62, 0x00}, //00//10 //18 + {0x63, 0x00}, //00//10 //18 + {0x64, 0x00}, //00/10 //18 + {0x65, 0x00}, //00//10 //18 + {0x66, 0x20}, //1e + {0x67, 0x20}, //1e + {0x68, 0x20}, //1e + {0x69, 0x20}, //1e + + + {0x76, 0x00}, //0f + + {0x6a, 0x00}, //06 + {0x6b, 0x00}, //06 + {0x6c, 0x3e}, //06 + {0x6d, 0x3e}, //06 + {0x6e, 0x3f}, //06 + {0x6f, 0x3f}, //06 + {0x70, 0x00}, //06 + {0x71, 0x00}, //06 //manual offset + + {0x76, 0x00}, //1f//add offset + {0x72, 0xf0}, //[7:4]BLK DD th [3:0]BLK various th + {0x7e, 0x3c}, //ndark + {0x7f, 0x00}, + + {0xfe, 0x02}, + {0x48, 0x15}, + {0x49, 0x00}, //04//04 //ASDE OFFSET SLOPE + {0x4b, 0x0b}, //ASDE y OFFSET SLOPE + {0xfe, 0x00}, + +/////////////////////////////////////////////// +/////////// AEC //////////////////////// +/////////////////////////////////////////////// + {0xfe, 0x01}, + + {0x01, 0x04}, //AEC X1 + {0x02, 0xc0}, //AEC X2 + {0x03, 0x04}, //AEC Y1 + {0x04, 0x90}, //AEC Y2 + {0x05, 0x30}, //20 //AEC center X1 + {0x06, 0x90}, //40 //AEC center X2 + {0x07, 0x20}, //30 //AEC center Y1 + {0x08, 0x70}, //60 //AEC center Y2 + + {0x09, 0x00}, //AEC show mode + {0x0a, 0xc2}, //[7]col gain enable + {0x0b, 0x11}, //AEC every N + {0x0c, 0x10}, //AEC_mode3 center weight + {0x13, 0x40}, //2a //AEC Y target + {0x17, 0x00}, //AEC ignore mode + {0x1c, 0x11}, // + {0x1e, 0x61}, // + {0x1f, 0x30}, //40//50 //max pre gain + {0x20, 0x40}, //60//40 //max post gain + {0x22, 0x80}, //AEC outdoor THD + {0x23, 0x20}, //target_Y_low_limit + {0xfe, 0x02}, + {0x0f, 0x04}, //05 + {0xfe, 0x01}, + + {0x12, 0x35}, //35 //[5:4]group_size [3]slope_disable [2]outdoor_enable [0]histogram_enable + {0x15, 0x50}, //target_Y_high_limit + {0x10, 0x31}, //num_thd_high + {0x3e, 0x28}, //num_thd_low + {0x3f, 0xe0}, //luma_thd + {0x40, 0x20}, //luma_slope + {0x41, 0x0f}, //color_diff + + {0xfe, 0x02}, + {0x0f, 0x05}, //max_col_level +/////////////////////////// +////// INTPEE ///////////// +/////////////////////////// + {0xfe, 0x02}, //page2 + {0x90, 0x6c}, //ac //eeintp mode1 + {0x91, 0x03}, //02 ////eeintp mode2 + {0x92, 0xc8}, //44 //low criteria for direction + {0x94, 0x66}, + {0x95, 0xb5}, + {0x97, 0x64}, //78 ////edge effect + {0xa2, 0x11}, //fix direction + {0xfe, 0x00}, + +///////////////////////////// +//////// DNDD/////////////// +///////////////////////////// + {0xfe, 0x02}, + {0x80, 0xc1}, //c1 //[7]share mode [6]skin mode [5]is 5x5 mode [1:0]noise value select 0:2 1:2.5 2:3 3:4 + {0x81, 0x08}, // + {0x82, 0x08}, //signal a 0.6 + {0x83, 0x08}, //04 //signal b 2.5 + + {0x84, 0x0a}, //10 //05 dark_DD_TH + {0x86, 0xf0}, //a0 Y_value_dd_th2 + {0x87, 0x50}, //90 Y_value_dd_th3 + {0x88, 0x15}, //60 Y_value_dd_th4 + + {0x89, 0x50}, //80 // asde th2 + {0x8a, 0x30}, //60 // asde th3 + {0x8b, 0x10}, //30 // asde th4 + +///////////////////////////////////////////////// +///////////// ASDE //////////////////////// +///////////////////////////////////////////////// + {0xfe, 0x01}, //page 1 + {0x21, 0x14}, //luma_value_div_sel(分频,与0xef呈2倍关系,增大1,0xef的值减小1倍) +//ff ef luma_value read_only + + {0xfe, 0x02}, //page2 + {0xa3, 0x40}, //ASDE_low_luma_value_LSC_th_H + {0xa4, 0x20}, //ASDE_low_luma_value_LSC_th_L + + {0xa5, 0x40}, //80 //ASDE_LSC_gain_dec_slope_H + {0xa6, 0x80}, // 80 //ASDE_LSC_gain_dec_slope_L +//ff a7 ASDE_LSC_gain_dec //read only + + {0xab, 0x40}, //50 //ASDE_low_luma_value_OT_th + + {0xae, 0x0c}, //[3]EE1_effect_inc_or_dec_high,[2]EE2_effect_inc_or_dec_high, + //[1]EE1_effect_inc_or_dec_low,[0]EE2_effect_inc_or_dec_low, 1:inc 0:dec + + {0xb3, 0x34}, //44 //ASDE_EE1_effect_slope_low,ASDE_EE2_effect_slope_low + {0xb4, 0x44}, //12 //ASDE_EE1_effect_slope_high,ASDE_EE2_effect_slope_high + + {0xb6, 0x38}, //40//40 //ASDE_auto_saturation_dec_slope + {0xb7, 0x02}, //04 //ASDE_sub_saturation_slope + {0xb9, 0x30}, //[7:0]ASDE_auto_saturation_low_limit + {0x3c, 0x08}, //[3:0]auto gray_dec_slope + {0x3d, 0x30}, //[7:0]auto gray_dec_th + + + {0x4b, 0x0d}, //y offset slope + {0x4c, 0x20}, //y offset limit + + {0xfe, 0x00}, +// +///////////////////gamma1//////////////////// +////Gamma + {0xfe, 0x02}, + {0x10, 0x10}, + {0x11, 0x15}, + {0x12, 0x1a}, + {0x13, 0x1f}, + {0x14, 0x2c}, + {0x15, 0x39}, + {0x16, 0x45}, + {0x17, 0x54}, + {0x18, 0x69}, + {0x19, 0x7d}, + {0x1a, 0x8f}, + {0x1b, 0x9d}, + {0x1c, 0xa9}, + {0x1d, 0xbd}, + {0x1e, 0xcd}, + {0x1f, 0xd9}, + {0x20, 0xe3}, + {0x21, 0xea}, + {0x22, 0xef}, + {0x23, 0xf5}, + {0x24, 0xf9}, + {0x25, 0xff}, + +/////auto gamma///// + {0xfe, 0x02}, + {0x26, 0x0f}, + {0x27, 0x14}, + {0x28, 0x19}, + {0x29, 0x1e}, + {0x2a, 0x27}, + {0x2b, 0x33}, + {0x2c, 0x3b}, + {0x2d, 0x45}, + {0x2e, 0x59}, + {0x2f, 0x69}, + {0x30, 0x7c}, + {0x31, 0x89}, + {0x32, 0x98}, + {0x33, 0xae}, + {0x34, 0xc0}, + {0x35, 0xcf}, + {0x36, 0xda}, + {0x37, 0xe2}, + {0x38, 0xe9}, + {0x39, 0xf3}, + {0x3a, 0xf9}, + {0x3b, 0xff}, + +/////////////////////////////////////////////// +/////////// YCP /////////////////////// +/////////////////////////////////////////////// + {0xfe, 0x02}, + {0xd1, 0x30}, //32 // + {0xd2, 0x30}, //32 // + {0xd3, 0x45}, + {0xdd, 0x14}, //edge sa + {0xde, 0x86}, //asde auto gray + {0xed, 0x01}, // + {0xee, 0x28}, + {0xef, 0x30}, + {0xd8, 0xd8}, //autogray protecy + +//////////////////////////// +//////// LSC 0.8/////////////// +//////////////////////////// + {0xfe, 0x01}, + {0xa1, 0x80}, // center_row + {0xa2, 0x80}, // center_col + {0xa4, 0x00}, // sign of b1 + {0xa5, 0x00}, // sign of b1 + {0xa6, 0x70}, // sign of b4 + {0xa7, 0x00}, // sign of b4 + {0xa8, 0x77}, // sign of b22 + {0xa9, 0x77}, // sign of b22 + {0xaa, 0x1f}, // Q1_b1 of R + {0xab, 0x0d}, // Q1_b1 of G + {0xac, 0x19}, // Q1_b1 of B + {0xad, 0x24}, // Q2_b1 of R + {0xae, 0x0e}, // Q2_b1 of G + {0xaf, 0x1d}, // Q2_b1 of B + {0xb0, 0x12}, // Q3_b1 of R + {0xb1, 0x0c}, // Q3_b1 of G + {0xb2, 0x06}, // Q3_b1 of B + {0xb3, 0x13}, // Q4_b1 of R + {0xb4, 0x10}, // Q4_b1 of G + {0xb5, 0x0c}, // Q4_b1 of B + {0xb6, 0x6a}, // right_b2 of R + {0xb7, 0x46}, // right_b2 of G + {0xb8, 0x40}, // right_b2 of B + {0xb9, 0x0b}, // right_b4 of R + {0xba, 0x04}, // right_b4 of G + {0xbb, 0x00}, // right_b4 of B + {0xbc, 0x53}, // left_b2 of R + {0xbd, 0x37}, // left_b2 of G + {0xbe, 0x2d}, // left_b2 of B + {0xbf, 0x0a}, // left_b4 of R + {0xc0, 0x0a}, // left_b4 of G + {0xc1, 0x14}, // left_b4 of B + {0xc2, 0x34}, // up_b2 of R + {0xc3, 0x22}, // up_b2 of G + {0xc4, 0x18}, // up_b2 of B + {0xc5, 0x23}, // up_b4 of R + {0xc6, 0x0f}, // up_b4 of G + {0xc7, 0x3c}, // up_b4 of B + {0xc8, 0x20}, // down_b2 of R + {0xc9, 0x1f}, // down_b2 of G + {0xca, 0x17}, // down_b2 of B + {0xcb, 0x2d}, // down_b4 of R + {0xcc, 0x12}, // down_b4 of G + {0xcd, 0x20}, // down_b4 of B + {0xd0, 0x61}, // right_up_b22 of R + {0xd1, 0x2f}, // right_up_b22 of G + {0xd2, 0x39}, // right_up_b22 of B + {0xd3, 0x45}, // right_down_b22 of R + {0xd4, 0x2c}, // right_down_b22 of G + {0xd5, 0x21}, // right_down_b22 of B + {0xd6, 0x64}, // left_up_b22 of R + {0xd7, 0x2d}, // left_up_b22 of G + {0xd8, 0x30}, // left_up_b22 of B + {0xd9, 0x42}, // left_down_b22 of R + {0xda, 0x27}, // left_down_b22 of G + {0xdb, 0x13}, // left_down_b22 of B + {0xfe, 0x00}, + +///////////////////////////////////////////////// +///////////// AWB //////////////////////// +///////////////////////////////////////////////// + {0xfe, 0x01}, + + {0x4f, 0x00}, + {0x4f, 0x00}, + {0x4b, 0x01}, + {0x4f, 0x00}, + + + {0x4c, 0x01}, + {0x4d, 0x6f}, + {0x4e, 0x02}, + {0x4c, 0x01}, + {0x4d, 0x70}, + + {0x4e, 0x02}, + {0x4c, 0x01}, + {0x4d, 0x8f}, + {0x4e, 0x02}, + + {0x4c, 0x01}, + {0x4d, 0x90}, + {0x4e, 0x02}, //light + + + {0x4c, 0x01}, + {0x4d, 0xed}, + {0x4e, 0x33}, //light + {0x4c, 0x01}, + {0x4d, 0xcd}, + {0x4e, 0x33}, //light + {0x4c, 0x01}, + {0x4d, 0xec}, + {0x4e, 0x03}, //light + + {0x4c, 0x01}, + {0x4d, 0x6c}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0x6d}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0x6e}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0x8c}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0x8d}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0x8e}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xab}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xac}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xad}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xae}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xcb}, + {0x4e, 0x03}, + + {0x4c, 0x01}, + {0x4d, 0xcc}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xce}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xeb}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xec}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xee}, + {0x4e, 0x03}, + {0x4c, 0x02}, + {0x4d, 0x0c}, + {0x4e, 0x03}, + {0x4c, 0x02}, + {0x4d, 0x0d}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xea}, + {0x4e, 0x03}, + {0x4c, 0x01}, + {0x4d, 0xaf}, + {0x4e, 0x03}, //dark + {0x4c, 0x01}, + {0x4d, 0xcf}, + {0x4e, 0x03}, //dark + + {0x4c, 0x01}, + {0x4d, 0xca}, + {0x4e, 0x04}, //light + {0x4c, 0x02}, + {0x4d, 0x0b}, + {0x4e, 0x05}, //light + {0x4c, 0x02}, + {0x4d, 0xc8}, + {0x4e, 0x06}, //light 100lux + {0x4c, 0x02}, + {0x4d, 0xa8}, + + {0x4e, 0x06}, //light + {0x4c, 0x02}, + {0x4d, 0xa9}, + {0x4e, 0x06}, //light + + + {0x4c, 0x02}, + {0x4d, 0x89}, + {0x4e, 0x06}, //400lux + {0x4c, 0x02}, + {0x4d, 0x69}, + {0x4e, 0x06}, //f12 + {0x4c, 0x02}, + {0x4d, 0x6a}, + {0x4e, 0x06}, //f12 + {0x4c, 0x02}, + {0x4d, 0xc7}, + {0x4e, 0x07}, + {0x4c, 0x02}, + {0x4d, 0xe7}, + {0x4e, 0x07}, //100lux + {0x4c, 0x03}, + {0x4d, 0x07}, + {0x4e, 0x07}, //light + + {0x4c, 0x02}, + {0x4d, 0xe8}, + {0x4e, 0x07}, + {0x4c, 0x02}, + {0x4d, 0xe9}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x08}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x09}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x27}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x28}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x29}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x47}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x48}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x49}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x67}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x68}, + {0x4e, 0x07}, + {0x4c, 0x03}, + {0x4d, 0x69}, + {0x4e, 0x07}, + + {0x4f, 0x01}, + {0xfe, 0x01}, + {0x50, 0x80}, //AWB_PRE_mode + {0x51, 0xa8}, //AWB_pre_THD_min[7:0] + {0x52, 0x57}, //AWB_pre_THD_min[15:8] Dominiate luma 0.25=639c 0.22=57a8 + {0x53, 0x38}, //AWB_pre_THD_min_MIX[7:0] + {0x54, 0xc7}, //AWB_pre_THD_min_MIX[15:8] Mix luma 0.5 + + {0x56, 0x0e}, //AWB_tone mode + {0x58, 0x08}, //AWB_C_num_sel,AWB_D_num_sel + {0x5b, 0x00}, //AWB_mix_mode + + {0x5c, 0x74}, //green_num0[7:0] + {0x5d, 0x8b}, //green_num0[15:8] 0.35 + + {0x61, 0xd3}, //R2G_stand0 + {0x62, 0xb5}, //B2G_stand0 + {0x63, 0x00}, //88//a4 //AWB gray mode [7]enable + {0x65, 0x04}, //AWB margin + + {0x67, 0xb2}, //R2G_stand3[7:0] FF/CWF + {0x68, 0xac}, //B2G_stand3[7:0] + {0x69, 0x00}, //R2G_stand4[9:8] B2G_stand4[9:8] R2G_stand3[9:8] B2G_stand3[9:8] + {0x6a, 0xb2}, //R2G_stand4[7:0] TL84/TL84&CWF + {0x6b, 0xac}, //B2G_stand4[7:0] + {0x6c, 0xb2}, //R2G_stand5[7:0] A + {0x6d, 0xac}, //B2G_stand5[7:0] + {0x6e, 0x40}, //AWB_skin_weight R2G_stand5[9:8] B2G_stand5[9:8] + {0x6f, 0x18}, //AWB_indoor_THD (0x21=17 caculate) + {0x73, 0x00}, //AWB_indoor_mode + + {0x70, 0x10}, //AWB low luma TH + {0x71, 0xe8}, //AWB outdoor TH + {0x72, 0xc0}, //outdoor mode + {0x74, 0x01}, //[2:0]AWB skip mode 2x2,4x4,4x8,8x8 + {0x75, 0x01}, //[1:0]AWB_every_N + {0x7f, 0x08}, //[3]gray world frame start + + {0x76, 0x70}, //R limit + {0x77, 0x58}, //G limit + {0x78, 0xa0}, //d8 //B limit + + {0xfe, 0x00}, +// +////////////////////////////////////////// +/////////// CC //////////////////////// +////////////////////////////////////////// + {0xfe, 0x02}, + + {0xc0, 0x01}, //[5:4] CC mode [0]CCT enable + + {0xC1, 0x50}, //D50/D65 + {0xc2, 0xF9}, + {0xc3, 0x00}, //0 + {0xc4, 0xe8}, //e0 + {0xc5, 0x48}, + {0xc6, 0xf0}, + + + {0xC7, 0x50}, + {0xc8, 0xf2}, + {0xc9, 0x00}, + {0xcA, 0xE0}, + {0xcB, 0x45}, + {0xcC, 0xec}, + + {0xCd, 0x45}, + {0xce, 0xf0}, + {0xcf, 0x00}, + {0xe3, 0xf0}, + {0xe4, 0x45}, + {0xe5, 0xe8}, + + + {0xfe, 0x00}, + + {0xf2, 0x0f}, + + +//////////////frame rate 50Hz + {0xfe, 0x00}, + + {0xf7, 0x1d}, + {0xf8, 0x84}, + {0xfa, 0x00}, + + {0x05, 0x01}, //hb + {0x06, 0x3b}, + {0x07, 0x01}, //Vb + {0x08, 0x0b}, + + {0xfe, 0x01}, + {0x25, 0x01}, + {0x26, 0x32}, //step + {0x27, 0x03}, //8.15fps + {0x28, 0x96}, + {0x29, 0x03}, //8.15fps + {0x2a, 0x96}, + {0x2b, 0x03}, //8.15fps + {0x2c, 0x96}, + {0x2d, 0x04}, //8.15fps + {0x2e, 0x62}, + {0x3c, 0x00}, + {0xfe, 0x00}, + +/////////dark sun////// + {0xfe, 0x00}, + {0x18, 0x22}, + {0xfe, 0x02}, + {0x40, 0xbf}, + {0x46, 0xcf}, + {0xfe, 0x00}, + + {0xfe, 0x00}, + + {0xf7, 0x1d}, + {0xf8, 0x84}, + {0xfa, 0x10}, + + {0x05, 0x01}, //hb + {0x06, 0x18}, + {0x07, 0x00}, //Vb + {0x08, 0x2e}, + + {0xfe, 0x01}, + {0x25, 0x00}, + {0x26, 0xa2}, //step + {0x27, 0x01}, + {0x28, 0xe6}, + {0x29, 0x01}, + {0x2a, 0xe6}, + {0x2b, 0x01}, + {0x2c, 0xe6}, + {0x2d, 0x04}, // AEC_exp_level4[12:8] + {0x2e, 0x62}, // AEC_exp_level4[7:0] + {0x3c, 0x00}, + {0xfe, 0x00}, + + {0x09, 0x01}, //row start + {0x0a, 0xd0}, // + {0x0b, 0x02}, //col start + {0x0c, 0x70}, + {0x0d, 0x01}, //height + {0x0e, 0x00}, + {0x0f, 0x01}, //width + {0x10, 0x50}, + + {0x90, 0x01}, //crop + {0x91, 0x00}, + {0x92, 0x00}, + {0x93, 0x00}, + {0x94, 0x00}, + {0x95, 0x00}, + {0x96, 0xf0}, + {0x97, 0x01}, + {0x98, 0x40}, + + + {REGLIST_TAIL, 0x00}, +}; diff --git a/code/components/esp32-camera-master/sensors/private_include/nt99141.h b/code/components/esp32-camera-master/sensors/private_include/nt99141.h index 287a7429..8b0c562b 100644 --- a/code/components/esp32-camera-master/sensors/private_include/nt99141.h +++ b/code/components/esp32-camera-master/sensors/private_include/nt99141.h @@ -11,6 +11,24 @@ #include "sensor.h" -int NT99141_init(sensor_t *sensor); +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int nt99141_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ +int nt99141_init(sensor_t *sensor); #endif // __NT99141_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/ov2640.h b/code/components/esp32-camera-master/sensors/private_include/ov2640.h index a8904992..342ab213 100644 --- a/code/components/esp32-camera-master/sensors/private_include/ov2640.h +++ b/code/components/esp32-camera-master/sensors/private_include/ov2640.h @@ -9,5 +9,24 @@ #ifndef __OV2640_H__ #define __OV2640_H__ #include "sensor.h" +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int ov2640_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ int ov2640_init(sensor_t *sensor); + #endif // __OV2640_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/ov2640_regs.h b/code/components/esp32-camera-master/sensors/private_include/ov2640_regs.h index eb096b4b..8f47333f 100644 --- a/code/components/esp32-camera-master/sensors/private_include/ov2640_regs.h +++ b/code/components/esp32-camera-master/sensors/private_include/ov2640_regs.h @@ -120,8 +120,8 @@ typedef enum { #define HSTOP 0x18 #define VSTART 0x19 #define VSTOP 0x1A -#define MIDH 0x1C -#define MIDL 0x1D +#define REG_MIDH 0x1C +#define REG_MIDL 0x1D #define AEW 0x24 #define AEB 0x25 #define VV 0x26 diff --git a/code/components/esp32-camera-master/sensors/private_include/ov3660.h b/code/components/esp32-camera-master/sensors/private_include/ov3660.h index 8e5ae3cb..341d6886 100644 --- a/code/components/esp32-camera-master/sensors/private_include/ov3660.h +++ b/code/components/esp32-camera-master/sensors/private_include/ov3660.h @@ -11,6 +11,24 @@ #include "sensor.h" +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int ov3660_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ int ov3660_init(sensor_t *sensor); #endif // __OV3660_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/ov5640.h b/code/components/esp32-camera-master/sensors/private_include/ov5640.h index 7b572ad3..120ae720 100644 --- a/code/components/esp32-camera-master/sensors/private_include/ov5640.h +++ b/code/components/esp32-camera-master/sensors/private_include/ov5640.h @@ -4,6 +4,24 @@ #include "sensor.h" +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int ov5640_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ int ov5640_init(sensor_t *sensor); #endif // __OV5640_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/ov7670.h b/code/components/esp32-camera-master/sensors/private_include/ov7670.h index cdf845cf..b3a645a7 100644 --- a/code/components/esp32-camera-master/sensors/private_include/ov7670.h +++ b/code/components/esp32-camera-master/sensors/private_include/ov7670.h @@ -10,5 +10,24 @@ #define __OV7670_H__ #include "sensor.h" +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int ov7670_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ int ov7670_init(sensor_t *sensor); + #endif // __OV7670_H__ diff --git a/code/components/esp32-camera-master/sensors/private_include/ov7725.h b/code/components/esp32-camera-master/sensors/private_include/ov7725.h index f8c35165..291b2668 100644 --- a/code/components/esp32-camera-master/sensors/private_include/ov7725.h +++ b/code/components/esp32-camera-master/sensors/private_include/ov7725.h @@ -10,5 +10,24 @@ #define __OV7725_H__ #include "sensor.h" +/** + * @brief Detect sensor pid + * + * @param slv_addr SCCB address + * @param id Detection result + * @return + * 0: Can't detect this sensor + * Nonzero: This sensor has been detected + */ +int ov7725_detect(int slv_addr, sensor_id_t *id); + +/** + * @brief initialize sensor function pointers + * + * @param sensor pointer of sensor + * @return + * Always 0 + */ int ov7725_init(sensor_t *sensor); + #endif // __OV7725_H__ diff --git a/code/components/esp32-camera-master/target/esp32/ll_cam.c b/code/components/esp32-camera-master/target/esp32/ll_cam.c new file mode 100644 index 00000000..e513205d --- /dev/null +++ b/code/components/esp32-camera-master/target/esp32/ll_cam.c @@ -0,0 +1,522 @@ +// Copyright 2010-2020 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include "soc/i2s_struct.h" +#include "esp_idf_version.h" +#if (ESP_IDF_VERSION_MAJOR >= 4) && (ESP_IDF_VERSION_MINOR > 1) +#include "hal/gpio_ll.h" +#else +#include "soc/gpio_periph.h" +#define esp_rom_delay_us ets_delay_us +static inline int gpio_ll_get_level(gpio_dev_t *hw, int gpio_num) +{ + if (gpio_num < 32) { + return (hw->in >> gpio_num) & 0x1; + } else { + return (hw->in1.data >> (gpio_num - 32)) & 0x1; + } +} +#endif +#include "ll_cam.h" +#include "xclk.h" +#include "cam_hal.h" + +static const char *TAG = "esp32 ll_cam"; + +#define I2S_ISR_ENABLE(i) {I2S0.int_clr.i = 1;I2S0.int_ena.i = 1;} +#define I2S_ISR_DISABLE(i) {I2S0.int_ena.i = 0;I2S0.int_clr.i = 1;} + +typedef union { + struct { + uint32_t sample2:8; + uint32_t unused2:8; + uint32_t sample1:8; + uint32_t unused1:8; + }; + uint32_t val; +} dma_elem_t; + +typedef enum { + /* camera sends byte sequence: s1, s2, s3, s4, ... + * fifo receives: 00 s1 00 s2, 00 s2 00 s3, 00 s3 00 s4, ... + */ + SM_0A0B_0B0C = 0, + /* camera sends byte sequence: s1, s2, s3, s4, ... + * fifo receives: 00 s1 00 s2, 00 s3 00 s4, ... + */ + SM_0A0B_0C0D = 1, + /* camera sends byte sequence: s1, s2, s3, s4, ... + * fifo receives: 00 s1 00 00, 00 s2 00 00, 00 s3 00 00, ... + */ + SM_0A00_0B00 = 3, +} i2s_sampling_mode_t; + +typedef size_t (*dma_filter_t)(uint8_t* dst, const uint8_t* src, size_t len); + +static i2s_sampling_mode_t sampling_mode = SM_0A00_0B00; + +static size_t ll_cam_bytes_per_sample(i2s_sampling_mode_t mode) +{ + switch(mode) { + case SM_0A00_0B00: + return 4; + case SM_0A0B_0B0C: + return 4; + case SM_0A0B_0C0D: + return 2; + default: + assert(0 && "invalid sampling mode"); + return 0; + } +} + +static size_t IRAM_ATTR ll_cam_dma_filter_jpeg(uint8_t* dst, const uint8_t* src, size_t len) +{ + const dma_elem_t* dma_el = (const dma_elem_t*)src; + size_t elements = len / sizeof(dma_elem_t); + size_t end = elements / 4; + // manually unrolling 4 iterations of the loop here + for (size_t i = 0; i < end; ++i) { + dst[0] = dma_el[0].sample1; + dst[1] = dma_el[1].sample1; + dst[2] = dma_el[2].sample1; + dst[3] = dma_el[3].sample1; + dma_el += 4; + dst += 4; + } + return elements; +} + +static size_t IRAM_ATTR ll_cam_dma_filter_grayscale(uint8_t* dst, const uint8_t* src, size_t len) +{ + const dma_elem_t* dma_el = (const dma_elem_t*)src; + size_t elements = len / sizeof(dma_elem_t); + size_t end = elements / 4; + for (size_t i = 0; i < end; ++i) { + // manually unrolling 4 iterations of the loop here + dst[0] = dma_el[0].sample1; + dst[1] = dma_el[1].sample1; + dst[2] = dma_el[2].sample1; + dst[3] = dma_el[3].sample1; + dma_el += 4; + dst += 4; + } + return elements; +} + +static size_t IRAM_ATTR ll_cam_dma_filter_grayscale_highspeed(uint8_t* dst, const uint8_t* src, size_t len) +{ + const dma_elem_t* dma_el = (const dma_elem_t*)src; + size_t elements = len / sizeof(dma_elem_t); + size_t end = elements / 8; + for (size_t i = 0; i < end; ++i) { + // manually unrolling 4 iterations of the loop here + dst[0] = dma_el[0].sample1; + dst[1] = dma_el[2].sample1; + dst[2] = dma_el[4].sample1; + dst[3] = dma_el[6].sample1; + dma_el += 8; + dst += 4; + } + // the final sample of a line in SM_0A0B_0B0C sampling mode needs special handling + if ((elements & 0x7) != 0) { + dst[0] = dma_el[0].sample1; + dst[1] = dma_el[2].sample1; + elements += 1; + } + return elements / 2; +} + +static size_t IRAM_ATTR ll_cam_dma_filter_yuyv(uint8_t* dst, const uint8_t* src, size_t len) +{ + const dma_elem_t* dma_el = (const dma_elem_t*)src; + size_t elements = len / sizeof(dma_elem_t); + size_t end = elements / 4; + for (size_t i = 0; i < end; ++i) { + dst[0] = dma_el[0].sample1;//y0 + dst[1] = dma_el[0].sample2;//u + dst[2] = dma_el[1].sample1;//y1 + dst[3] = dma_el[1].sample2;//v + + dst[4] = dma_el[2].sample1;//y0 + dst[5] = dma_el[2].sample2;//u + dst[6] = dma_el[3].sample1;//y1 + dst[7] = dma_el[3].sample2;//v + dma_el += 4; + dst += 8; + } + return elements * 2; +} + +static size_t IRAM_ATTR ll_cam_dma_filter_yuyv_highspeed(uint8_t* dst, const uint8_t* src, size_t len) +{ + const dma_elem_t* dma_el = (const dma_elem_t*)src; + size_t elements = len / sizeof(dma_elem_t); + size_t end = elements / 8; + for (size_t i = 0; i < end; ++i) { + dst[0] = dma_el[0].sample1;//y0 + dst[1] = dma_el[1].sample1;//u + dst[2] = dma_el[2].sample1;//y1 + dst[3] = dma_el[3].sample1;//v + + dst[4] = dma_el[4].sample1;//y0 + dst[5] = dma_el[5].sample1;//u + dst[6] = dma_el[6].sample1;//y1 + dst[7] = dma_el[7].sample1;//v + dma_el += 8; + dst += 8; + } + if ((elements & 0x7) != 0) { + dst[0] = dma_el[0].sample1;//y0 + dst[1] = dma_el[1].sample1;//u + dst[2] = dma_el[2].sample1;//y1 + dst[3] = dma_el[2].sample2;//v + elements += 4; + } + return elements; +} + +static void IRAM_ATTR ll_cam_vsync_isr(void *arg) +{ + //DBG_PIN_SET(1); + cam_obj_t *cam = (cam_obj_t *)arg; + BaseType_t HPTaskAwoken = pdFALSE; + // filter + ets_delay_us(1); + if (gpio_ll_get_level(&GPIO, cam->vsync_pin) == !cam->vsync_invert) { + ll_cam_send_event(cam, CAM_VSYNC_EVENT, &HPTaskAwoken); + if (HPTaskAwoken == pdTRUE) { + portYIELD_FROM_ISR(); + } + } + //DBG_PIN_SET(0); +} + +static void IRAM_ATTR ll_cam_dma_isr(void *arg) +{ + //DBG_PIN_SET(1); + cam_obj_t *cam = (cam_obj_t *)arg; + BaseType_t HPTaskAwoken = pdFALSE; + + typeof(I2S0.int_st) status = I2S0.int_st; + if (status.val == 0) { + return; + } + + I2S0.int_clr.val = status.val; + + if (status.in_suc_eof) { + ll_cam_send_event(cam, CAM_IN_SUC_EOF_EVENT, &HPTaskAwoken); + } + if (HPTaskAwoken == pdTRUE) { + portYIELD_FROM_ISR(); + } + //DBG_PIN_SET(0); +} + +bool ll_cam_stop(cam_obj_t *cam) +{ + I2S0.conf.rx_start = 0; + I2S_ISR_DISABLE(in_suc_eof); + I2S0.in_link.stop = 1; + return true; +} + +esp_err_t ll_cam_deinit(cam_obj_t *cam) +{ + gpio_isr_handler_remove(cam->vsync_pin); + + if (cam->cam_intr_handle) { + esp_intr_free(cam->cam_intr_handle); + cam->cam_intr_handle = NULL; + } + + return ESP_OK; +} + +bool ll_cam_start(cam_obj_t *cam, int frame_pos) +{ + I2S0.conf.rx_start = 0; + + I2S_ISR_ENABLE(in_suc_eof); + + I2S0.conf.rx_reset = 1; + I2S0.conf.rx_reset = 0; + I2S0.conf.rx_fifo_reset = 1; + I2S0.conf.rx_fifo_reset = 0; + I2S0.lc_conf.in_rst = 1; + I2S0.lc_conf.in_rst = 0; + I2S0.lc_conf.ahbm_fifo_rst = 1; + I2S0.lc_conf.ahbm_fifo_rst = 0; + I2S0.lc_conf.ahbm_rst = 1; + I2S0.lc_conf.ahbm_rst = 0; + + I2S0.rx_eof_num = cam->dma_half_buffer_size / sizeof(dma_elem_t); + I2S0.in_link.addr = ((uint32_t)&cam->dma[0]) & 0xfffff; + + I2S0.in_link.start = 1; + I2S0.conf.rx_start = 1; + return true; +} + +esp_err_t ll_cam_config(cam_obj_t *cam, const camera_config_t *config) +{ + // Enable and configure I2S peripheral + periph_module_enable(PERIPH_I2S0_MODULE); + + I2S0.conf.rx_reset = 1; + I2S0.conf.rx_reset = 0; + I2S0.conf.rx_fifo_reset = 1; + I2S0.conf.rx_fifo_reset = 0; + I2S0.lc_conf.in_rst = 1; + I2S0.lc_conf.in_rst = 0; + I2S0.lc_conf.ahbm_fifo_rst = 1; + I2S0.lc_conf.ahbm_fifo_rst = 0; + I2S0.lc_conf.ahbm_rst = 1; + I2S0.lc_conf.ahbm_rst = 0; + + I2S0.conf.rx_slave_mod = 1; + I2S0.conf.rx_right_first = 0; + I2S0.conf.rx_msb_right = 0; + I2S0.conf.rx_msb_shift = 0; + I2S0.conf.rx_mono = 0; + I2S0.conf.rx_short_sync = 0; + + I2S0.conf2.lcd_en = 1; + I2S0.conf2.camera_en = 1; + + // Configure clock divider + I2S0.clkm_conf.clkm_div_a = 0; + I2S0.clkm_conf.clkm_div_b = 0; + I2S0.clkm_conf.clkm_div_num = 2; + + I2S0.fifo_conf.dscr_en = 1; + I2S0.fifo_conf.rx_fifo_mod = sampling_mode; + I2S0.fifo_conf.rx_fifo_mod_force_en = 1; + + I2S0.conf_chan.rx_chan_mod = 1; + I2S0.sample_rate_conf.rx_bits_mod = 0; + I2S0.timing.val = 0; + I2S0.timing.rx_dsync_sw = 1; + + return ESP_OK; +} + +void ll_cam_vsync_intr_enable(cam_obj_t *cam, bool en) +{ + if (en) { + gpio_intr_enable(cam->vsync_pin); + } else { + gpio_intr_disable(cam->vsync_pin); + } +} + +esp_err_t ll_cam_set_pin(cam_obj_t *cam, const camera_config_t *config) +{ + gpio_config_t io_conf = {0}; + io_conf.intr_type = cam->vsync_invert ? GPIO_PIN_INTR_NEGEDGE : GPIO_PIN_INTR_POSEDGE; + io_conf.pin_bit_mask = 1ULL << config->pin_vsync; + io_conf.mode = GPIO_MODE_INPUT; + io_conf.pull_up_en = 1; + io_conf.pull_down_en = 0; + gpio_config(&io_conf); + gpio_install_isr_service(ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_IRAM); + gpio_isr_handler_add(config->pin_vsync, ll_cam_vsync_isr, cam); + gpio_intr_disable(config->pin_vsync); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_pclk], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_pclk, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_pclk, GPIO_FLOATING); + gpio_matrix_in(config->pin_pclk, I2S0I_WS_IN_IDX, false); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_vsync], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_vsync, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_vsync, GPIO_FLOATING); + gpio_matrix_in(config->pin_vsync, I2S0I_V_SYNC_IDX, false); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_href], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_href, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_href, GPIO_FLOATING); + gpio_matrix_in(config->pin_href, I2S0I_H_SYNC_IDX, false); + + int data_pins[8] = { + config->pin_d0, config->pin_d1, config->pin_d2, config->pin_d3, config->pin_d4, config->pin_d5, config->pin_d6, config->pin_d7, + }; + for (int i = 0; i < 8; i++) { + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[data_pins[i]], PIN_FUNC_GPIO); + gpio_set_direction(data_pins[i], GPIO_MODE_INPUT); + gpio_set_pull_mode(data_pins[i], GPIO_FLOATING); + gpio_matrix_in(data_pins[i], I2S0I_DATA_IN0_IDX + i, false); + } + + gpio_matrix_in(0x38, I2S0I_H_ENABLE_IDX, false); + return ESP_OK; +} + +esp_err_t ll_cam_init_isr(cam_obj_t *cam) +{ + return esp_intr_alloc(ETS_I2S0_INTR_SOURCE, ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_IRAM, ll_cam_dma_isr, cam, &cam->cam_intr_handle); +} + +void ll_cam_do_vsync(cam_obj_t *cam) +{ +} + +uint8_t ll_cam_get_dma_align(cam_obj_t *cam) +{ + return 0; +} + +static bool ll_cam_calc_rgb_dma(cam_obj_t *cam){ + size_t dma_half_buffer_max = CONFIG_CAMERA_DMA_BUFFER_SIZE_MAX / 2 / cam->dma_bytes_per_item; + size_t dma_buffer_max = 2 * dma_half_buffer_max; + size_t node_max = LCD_CAM_DMA_NODE_BUFFER_MAX_SIZE / cam->dma_bytes_per_item; + + size_t line_width = cam->width * cam->in_bytes_per_pixel; + size_t image_size = cam->height * line_width; + if (image_size > (4 * 1024 * 1024) || (line_width > dma_half_buffer_max)) { + ESP_LOGE(TAG, "Resolution too high"); + return 0; + } + + size_t node_size = node_max; + size_t nodes_per_line = 1; + size_t lines_per_node = 1; + size_t lines_per_half_buffer = 1; + size_t dma_half_buffer_min = node_max; + size_t dma_half_buffer = dma_half_buffer_max; + size_t dma_buffer_size = dma_buffer_max; + + // Calculate DMA Node Size so that it's divisable by or divisor of the line width + if(line_width >= node_max){ + // One or more nodes will be requied for one line + for(size_t i = node_max; i > 0; i=i-1){ + if ((line_width % i) == 0) { + node_size = i; + nodes_per_line = line_width / node_size; + break; + } + } + } else { + // One or more lines can fit into one node + for(size_t i = node_max; i > 0; i=i-1){ + if ((i % line_width) == 0) { + node_size = i; + lines_per_node = node_size / line_width; + while((cam->height % lines_per_node) != 0){ + lines_per_node = lines_per_node - 1; + node_size = lines_per_node * line_width; + } + break; + } + } + } + // Calculate minimum EOF size = max(mode_size, line_size) + dma_half_buffer_min = node_size * nodes_per_line; + // Calculate max EOF size divisable by node size + dma_half_buffer = (dma_half_buffer_max / dma_half_buffer_min) * dma_half_buffer_min; + // Adjust EOF size so that height will be divisable by the number of lines in each EOF + lines_per_half_buffer = dma_half_buffer / line_width; + while((cam->height % lines_per_half_buffer) != 0){ + dma_half_buffer = dma_half_buffer - dma_half_buffer_min; + lines_per_half_buffer = dma_half_buffer / line_width; + } + // Calculate DMA size + dma_buffer_size =(dma_buffer_max / dma_half_buffer) * dma_half_buffer; + + ESP_LOGI(TAG, "node_size: %4u, nodes_per_line: %u, lines_per_node: %u, dma_half_buffer_min: %5u, dma_half_buffer: %5u, lines_per_half_buffer: %2u, dma_buffer_size: %5u, image_size: %u", + node_size * cam->dma_bytes_per_item, nodes_per_line, lines_per_node, dma_half_buffer_min * cam->dma_bytes_per_item, dma_half_buffer * cam->dma_bytes_per_item, lines_per_half_buffer, dma_buffer_size * cam->dma_bytes_per_item, image_size); + + cam->dma_buffer_size = dma_buffer_size * cam->dma_bytes_per_item; + cam->dma_half_buffer_size = dma_half_buffer * cam->dma_bytes_per_item; + cam->dma_node_buffer_size = node_size * cam->dma_bytes_per_item; + cam->dma_half_buffer_cnt = cam->dma_buffer_size / cam->dma_half_buffer_size; + return 1; +} + +bool ll_cam_dma_sizes(cam_obj_t *cam) +{ + cam->dma_bytes_per_item = ll_cam_bytes_per_sample(sampling_mode); + if (cam->jpeg_mode) { + cam->dma_half_buffer_cnt = 8; + cam->dma_node_buffer_size = 2048; + cam->dma_half_buffer_size = cam->dma_node_buffer_size * 2; + cam->dma_buffer_size = cam->dma_half_buffer_cnt * cam->dma_half_buffer_size; + } else { + return ll_cam_calc_rgb_dma(cam); + } + return 1; +} + +static dma_filter_t dma_filter = ll_cam_dma_filter_jpeg; + +size_t IRAM_ATTR ll_cam_memcpy(cam_obj_t *cam, uint8_t *out, const uint8_t *in, size_t len) +{ + //DBG_PIN_SET(1); + size_t r = dma_filter(out, in, len); + //DBG_PIN_SET(0); + return r; +} + +esp_err_t ll_cam_set_sample_mode(cam_obj_t *cam, pixformat_t pix_format, uint32_t xclk_freq_hz, uint16_t sensor_pid) +{ + if (pix_format == PIXFORMAT_GRAYSCALE) { + if (sensor_pid == OV3660_PID || sensor_pid == OV5640_PID || sensor_pid == NT99141_PID) { + if (xclk_freq_hz > 10000000) { + sampling_mode = SM_0A00_0B00; + dma_filter = ll_cam_dma_filter_yuyv_highspeed; + } else { + sampling_mode = SM_0A0B_0C0D; + dma_filter = ll_cam_dma_filter_yuyv; + } + cam->in_bytes_per_pixel = 1; // camera sends Y8 + } else { + if (xclk_freq_hz > 10000000 && sensor_pid != OV7725_PID) { + sampling_mode = SM_0A00_0B00; + dma_filter = ll_cam_dma_filter_grayscale_highspeed; + } else { + sampling_mode = SM_0A0B_0C0D; + dma_filter = ll_cam_dma_filter_grayscale; + } + cam->in_bytes_per_pixel = 2; // camera sends YU/YV + } + cam->fb_bytes_per_pixel = 1; // frame buffer stores Y8 + } else if (pix_format == PIXFORMAT_YUV422 || pix_format == PIXFORMAT_RGB565) { + if (xclk_freq_hz > 10000000 && sensor_pid != OV7725_PID) { + if (sensor_pid == OV7670_PID) { + sampling_mode = SM_0A0B_0B0C; + } else { + sampling_mode = SM_0A00_0B00; + } + dma_filter = ll_cam_dma_filter_yuyv_highspeed; + } else { + sampling_mode = SM_0A0B_0C0D; + dma_filter = ll_cam_dma_filter_yuyv; + } + cam->in_bytes_per_pixel = 2; // camera sends YU/YV + cam->fb_bytes_per_pixel = 2; // frame buffer stores YU/YV/RGB565 + } else if (pix_format == PIXFORMAT_JPEG) { + cam->in_bytes_per_pixel = 1; + cam->fb_bytes_per_pixel = 1; + dma_filter = ll_cam_dma_filter_jpeg; + sampling_mode = SM_0A00_0B00; + } else { + ESP_LOGE(TAG, "Requested format is not supported"); + return ESP_ERR_NOT_SUPPORTED; + } + I2S0.fifo_conf.rx_fifo_mod = sampling_mode; + return ESP_OK; +} diff --git a/code/components/esp32-camera-master/target/esp32s2/ll_cam.c b/code/components/esp32-camera-master/target/esp32s2/ll_cam.c new file mode 100644 index 00000000..d3cb5353 --- /dev/null +++ b/code/components/esp32-camera-master/target/esp32s2/ll_cam.c @@ -0,0 +1,402 @@ +// Copyright 2010-2020 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include "soc/system_reg.h" +#include "soc/i2s_struct.h" +#include "hal/gpio_ll.h" +#include "ll_cam.h" +#include "xclk.h" +#include "cam_hal.h" + +static const char *TAG = "s2 ll_cam"; + +#define I2S_ISR_ENABLE(i) {I2S0.int_clr.i = 1;I2S0.int_ena.i = 1;} +#define I2S_ISR_DISABLE(i) {I2S0.int_ena.i = 0;I2S0.int_clr.i = 1;} + +static void IRAM_ATTR ll_cam_vsync_isr(void *arg) +{ + //DBG_PIN_SET(1); + cam_obj_t *cam = (cam_obj_t *)arg; + BaseType_t HPTaskAwoken = pdFALSE; + // filter + ets_delay_us(1); + if (gpio_ll_get_level(&GPIO, cam->vsync_pin) == !cam->vsync_invert) { + ll_cam_send_event(cam, CAM_VSYNC_EVENT, &HPTaskAwoken); + } + + if (HPTaskAwoken == pdTRUE) { + portYIELD_FROM_ISR(); + } + //DBG_PIN_SET(0); +} + +static void IRAM_ATTR ll_cam_dma_isr(void *arg) +{ + cam_obj_t *cam = (cam_obj_t *)arg; + BaseType_t HPTaskAwoken = pdFALSE; + + typeof(I2S0.int_st) status = I2S0.int_st; + if (status.val == 0) { + return; + } + + I2S0.int_clr.val = status.val; + + if (status.in_suc_eof) { + ll_cam_send_event(cam, CAM_IN_SUC_EOF_EVENT, &HPTaskAwoken); + } + + if (HPTaskAwoken == pdTRUE) { + portYIELD_FROM_ISR(); + } +} + +bool ll_cam_stop(cam_obj_t *cam) +{ + I2S0.conf.rx_start = 0; + + if (cam->jpeg_mode || !cam->psram_mode) { + I2S_ISR_DISABLE(in_suc_eof); + } + + I2S0.in_link.stop = 1; + return true; +} + +esp_err_t ll_cam_deinit(cam_obj_t *cam) +{ + gpio_isr_handler_remove(cam->vsync_pin); + + if (cam->cam_intr_handle) { + esp_intr_free(cam->cam_intr_handle); + cam->cam_intr_handle = NULL; + } + + return ESP_OK; +} + +bool ll_cam_start(cam_obj_t *cam, int frame_pos) +{ + I2S0.conf.rx_start = 0; + + if (cam->jpeg_mode || !cam->psram_mode) { + I2S_ISR_ENABLE(in_suc_eof); + } + + I2S0.conf.rx_reset = 1; + I2S0.conf.rx_reset = 0; + I2S0.conf.rx_fifo_reset = 1; + I2S0.conf.rx_fifo_reset = 0; + I2S0.lc_conf.in_rst = 1; + I2S0.lc_conf.in_rst = 0; + I2S0.lc_conf.ahbm_fifo_rst = 1; + I2S0.lc_conf.ahbm_fifo_rst = 0; + I2S0.lc_conf.ahbm_rst = 1; + I2S0.lc_conf.ahbm_rst = 0; + + I2S0.rx_eof_num = cam->dma_half_buffer_size; // Ping pong operation + if (!cam->psram_mode) { + I2S0.in_link.addr = ((uint32_t)&cam->dma[0]) & 0xfffff; + } else { + I2S0.in_link.addr = ((uint32_t)&cam->frames[frame_pos].dma[0]) & 0xfffff; + } + + I2S0.in_link.start = 1; + I2S0.conf.rx_start = 1; + return true; +} + +esp_err_t ll_cam_config(cam_obj_t *cam, const camera_config_t *config) +{ + esp_err_t err = camera_enable_out_clock(config); + if(err != ESP_OK) { + return err; + } + periph_module_enable(PERIPH_I2S0_MODULE); + // Configure the clock + I2S0.clkm_conf.clkm_div_num = 2; // 160MHz / 2 = 80MHz + I2S0.clkm_conf.clkm_div_b = 0; + I2S0.clkm_conf.clkm_div_a = 0; + I2S0.clkm_conf.clk_sel = 2; + I2S0.clkm_conf.clk_en = 1; + + + I2S0.conf.val = 0; + I2S0.fifo_conf.val = 0; + I2S0.fifo_conf.dscr_en = 1; + + I2S0.lc_conf.ahbm_fifo_rst = 1; + I2S0.lc_conf.ahbm_fifo_rst = 0; + I2S0.lc_conf.ahbm_rst = 1; + I2S0.lc_conf.ahbm_rst = 0; + I2S0.lc_conf.check_owner = 0; + //I2S0.lc_conf.indscr_burst_en = 1; + //I2S0.lc_conf.ext_mem_bk_size = 0; // DMA access external memory block size. 0: 16 bytes, 1: 32 bytes, 2:64 bytes, 3:reserved + + I2S0.timing.val = 0; + + I2S0.int_ena.val = 0; + I2S0.int_clr.val = ~0; + + I2S0.conf2.lcd_en = 1; + I2S0.conf2.camera_en = 1; + + // Configuration data format + I2S0.conf.rx_slave_mod = 1; + I2S0.conf.rx_right_first = 0; + I2S0.conf.rx_msb_right = cam->swap_data; + I2S0.conf.rx_short_sync = 0; + I2S0.conf.rx_mono = 0; + I2S0.conf.rx_msb_shift = 0; + I2S0.conf.rx_dma_equal = 1; + + // Configure sampling rate + I2S0.sample_rate_conf.rx_bck_div_num = 1; + I2S0.sample_rate_conf.rx_bits_mod = 8; + + I2S0.conf1.rx_pcm_bypass = 1; + + I2S0.conf2.i_v_sync_filter_en = 1; + I2S0.conf2.i_v_sync_filter_thres = 4; + I2S0.conf2.cam_sync_fifo_reset = 1; + I2S0.conf2.cam_sync_fifo_reset = 0; + + I2S0.conf_chan.rx_chan_mod = 1; + + I2S0.fifo_conf.rx_fifo_mod_force_en = 1; + I2S0.fifo_conf.rx_data_num = 32; + I2S0.fifo_conf.rx_fifo_mod = 2; + + I2S0.lc_conf.in_rst = 1; + I2S0.lc_conf.in_rst = 0; + + I2S0.conf.rx_start = 1; + + return ESP_OK; +} + +void ll_cam_vsync_intr_enable(cam_obj_t *cam, bool en) +{ + if (en) { + gpio_intr_enable(cam->vsync_pin); + } else { + gpio_intr_disable(cam->vsync_pin); + } +} + +esp_err_t ll_cam_set_pin(cam_obj_t *cam, const camera_config_t *config) +{ + gpio_config_t io_conf = {0}; + io_conf.intr_type = cam->vsync_invert ? GPIO_PIN_INTR_NEGEDGE : GPIO_PIN_INTR_POSEDGE; + io_conf.pin_bit_mask = 1ULL << config->pin_vsync; + io_conf.mode = GPIO_MODE_INPUT; + io_conf.pull_up_en = 1; + io_conf.pull_down_en = 0; + gpio_config(&io_conf); + gpio_install_isr_service(ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_IRAM); + gpio_isr_handler_add(config->pin_vsync, ll_cam_vsync_isr, cam); + gpio_intr_disable(config->pin_vsync); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_pclk], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_pclk, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_pclk, GPIO_FLOATING); + gpio_matrix_in(config->pin_pclk, I2S0I_WS_IN_IDX, false); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_vsync], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_vsync, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_vsync, GPIO_FLOATING); + gpio_matrix_in(config->pin_vsync, I2S0I_V_SYNC_IDX, cam->vsync_invert); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_href], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_href, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_href, GPIO_FLOATING); + gpio_matrix_in(config->pin_href, I2S0I_H_SYNC_IDX, false); + + int data_pins[8] = { + config->pin_d0, config->pin_d1, config->pin_d2, config->pin_d3, config->pin_d4, config->pin_d5, config->pin_d6, config->pin_d7, + }; + for (int i = 0; i < 8; i++) { + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[data_pins[i]], PIN_FUNC_GPIO); + gpio_set_direction(data_pins[i], GPIO_MODE_INPUT); + gpio_set_pull_mode(data_pins[i], GPIO_FLOATING); + // High bit alignment, IN16 is always the highest bit + // fifo accesses data by bit, when rx_bits_mod is 8, the data needs to be aligned by 8 bits + gpio_matrix_in(data_pins[i], I2S0I_DATA_IN0_IDX + 8 + i, false); + } + + gpio_matrix_in(0x38, I2S0I_H_ENABLE_IDX, false); + + return ESP_OK; +} + +esp_err_t ll_cam_init_isr(cam_obj_t *cam) +{ + return esp_intr_alloc(ETS_I2S0_INTR_SOURCE, ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_IRAM, ll_cam_dma_isr, cam, &cam->cam_intr_handle); +} + +void ll_cam_do_vsync(cam_obj_t *cam) +{ + ll_cam_vsync_intr_enable(cam, false); + gpio_matrix_in(cam->vsync_pin, I2S0I_V_SYNC_IDX, !cam->vsync_invert); + ets_delay_us(10); + gpio_matrix_in(cam->vsync_pin, I2S0I_V_SYNC_IDX, cam->vsync_invert); + ll_cam_vsync_intr_enable(cam, true); +} + +uint8_t ll_cam_get_dma_align(cam_obj_t *cam) +{ + return 64;//16 << I2S0.lc_conf.ext_mem_bk_size; +} + +static bool ll_cam_calc_rgb_dma(cam_obj_t *cam){ + size_t node_max = LCD_CAM_DMA_NODE_BUFFER_MAX_SIZE / cam->dma_bytes_per_item; + size_t line_width = cam->width * cam->in_bytes_per_pixel; + size_t node_size = node_max; + size_t nodes_per_line = 1; + size_t lines_per_node = 1; + + // Calculate DMA Node Size so that it's divisable by or divisor of the line width + if(line_width >= node_max){ + // One or more nodes will be requied for one line + for(size_t i = node_max; i > 0; i=i-1){ + if ((line_width % i) == 0) { + node_size = i; + nodes_per_line = line_width / node_size; + break; + } + } + } else { + // One or more lines can fit into one node + for(size_t i = node_max; i > 0; i=i-1){ + if ((i % line_width) == 0) { + node_size = i; + lines_per_node = node_size / line_width; + while((cam->height % lines_per_node) != 0){ + lines_per_node = lines_per_node - 1; + node_size = lines_per_node * line_width; + } + break; + } + } + } + + ESP_LOGI(TAG, "node_size: %4u, nodes_per_line: %u, lines_per_node: %u", + node_size * cam->dma_bytes_per_item, nodes_per_line, lines_per_node); + + cam->dma_node_buffer_size = node_size * cam->dma_bytes_per_item; + + if (cam->psram_mode) { + cam->dma_buffer_size = cam->recv_size * cam->dma_bytes_per_item; + cam->dma_half_buffer_cnt = 2; + cam->dma_half_buffer_size = cam->dma_buffer_size / cam->dma_half_buffer_cnt; + } else { + size_t dma_half_buffer_max = CONFIG_CAMERA_DMA_BUFFER_SIZE_MAX / 2 / cam->dma_bytes_per_item; + if (line_width > dma_half_buffer_max) { + ESP_LOGE(TAG, "Resolution too high"); + return 0; + } + + // Calculate minimum EOF size = max(mode_size, line_size) + size_t dma_half_buffer_min = node_size * nodes_per_line; + + // Calculate max EOF size divisable by node size + size_t dma_half_buffer = (dma_half_buffer_max / dma_half_buffer_min) * dma_half_buffer_min; + + // Adjust EOF size so that height will be divisable by the number of lines in each EOF + size_t lines_per_half_buffer = dma_half_buffer / line_width; + while((cam->height % lines_per_half_buffer) != 0){ + dma_half_buffer = dma_half_buffer - dma_half_buffer_min; + lines_per_half_buffer = dma_half_buffer / line_width; + } + + // Calculate DMA size + size_t dma_buffer_max = 2 * dma_half_buffer_max; + size_t dma_buffer_size = dma_buffer_max; + dma_buffer_size =(dma_buffer_max / dma_half_buffer) * dma_half_buffer; + + ESP_LOGI(TAG, "dma_half_buffer_min: %5u, dma_half_buffer: %5u, lines_per_half_buffer: %2u, dma_buffer_size: %5u", + dma_half_buffer_min * cam->dma_bytes_per_item, dma_half_buffer * cam->dma_bytes_per_item, lines_per_half_buffer, dma_buffer_size * cam->dma_bytes_per_item); + + cam->dma_buffer_size = dma_buffer_size * cam->dma_bytes_per_item; + cam->dma_half_buffer_size = dma_half_buffer * cam->dma_bytes_per_item; + cam->dma_half_buffer_cnt = cam->dma_buffer_size / cam->dma_half_buffer_size; + } + return 1; +} + +bool ll_cam_dma_sizes(cam_obj_t *cam) +{ + cam->dma_bytes_per_item = 1; + if (cam->jpeg_mode) { + if (cam->psram_mode) { + cam->dma_buffer_size = cam->recv_size; + cam->dma_half_buffer_size = 1024; + cam->dma_half_buffer_cnt = cam->dma_buffer_size / cam->dma_half_buffer_size; + cam->dma_node_buffer_size = cam->dma_half_buffer_size; + } else { + cam->dma_half_buffer_cnt = 16; + cam->dma_buffer_size = cam->dma_half_buffer_cnt * 1024; + cam->dma_half_buffer_size = cam->dma_buffer_size / cam->dma_half_buffer_cnt; + cam->dma_node_buffer_size = cam->dma_half_buffer_size; + } + } else { + return ll_cam_calc_rgb_dma(cam); + } + return 1; +} + +size_t IRAM_ATTR ll_cam_memcpy(cam_obj_t *cam, uint8_t *out, const uint8_t *in, size_t len) +{ + // YUV to Grayscale + if (cam->in_bytes_per_pixel == 2 && cam->fb_bytes_per_pixel == 1) { + size_t end = len / 8; + for (size_t i = 0; i < end; ++i) { + out[0] = in[0]; + out[1] = in[2]; + out[2] = in[4]; + out[3] = in[6]; + out += 4; + in += 8; + } + return len / 2; + } + + // just memcpy + memcpy(out, in, len); + return len; +} + +esp_err_t ll_cam_set_sample_mode(cam_obj_t *cam, pixformat_t pix_format, uint32_t xclk_freq_hz, uint16_t sensor_pid) +{ + if (pix_format == PIXFORMAT_GRAYSCALE) { + if (sensor_pid == OV3660_PID || sensor_pid == OV5640_PID || sensor_pid == NT99141_PID) { + cam->in_bytes_per_pixel = 1; // camera sends Y8 + } else { + cam->in_bytes_per_pixel = 2; // camera sends YU/YV + } + cam->fb_bytes_per_pixel = 1; // frame buffer stores Y8 + } else if (pix_format == PIXFORMAT_YUV422 || pix_format == PIXFORMAT_RGB565) { + cam->in_bytes_per_pixel = 2; // camera sends YU/YV + cam->fb_bytes_per_pixel = 2; // frame buffer stores YU/YV/RGB565 + } else if (pix_format == PIXFORMAT_JPEG) { + cam->in_bytes_per_pixel = 1; + cam->fb_bytes_per_pixel = 1; + } else { + ESP_LOGE(TAG, "Requested format is not supported"); + return ESP_ERR_NOT_SUPPORTED; + } + return ESP_OK; +} diff --git a/code/components/esp32-camera-master/target/esp32s2/private_include/tjpgd.h b/code/components/esp32-camera-master/target/esp32s2/private_include/tjpgd.h new file mode 100644 index 00000000..31fbc97c --- /dev/null +++ b/code/components/esp32-camera-master/target/esp32s2/private_include/tjpgd.h @@ -0,0 +1,99 @@ +/*----------------------------------------------------------------------------/ +/ TJpgDec - Tiny JPEG Decompressor include file (C)ChaN, 2012 +/----------------------------------------------------------------------------*/ +#ifndef _TJPGDEC +#define _TJPGDEC +/*---------------------------------------------------------------------------*/ +/* System Configurations */ + +#define JD_SZBUF 512 /* Size of stream input buffer */ +#define JD_FORMAT 0 /* Output pixel format 0:RGB888 (3 BYTE/pix), 1:RGB565 (1 WORD/pix) */ +#define JD_USE_SCALE 1 /* Use descaling feature for output */ +#define JD_TBLCLIP 1 /* Use table for saturation (might be a bit faster but increases 1K bytes of code size) */ + +/*---------------------------------------------------------------------------*/ + +#ifdef __cplusplus +extern "C" { +#endif + +/* These types must be 16-bit, 32-bit or larger integer */ +typedef int INT; +typedef unsigned int UINT; + +/* These types must be 8-bit integer */ +typedef char CHAR; +typedef unsigned char UCHAR; +typedef unsigned char BYTE; + +/* These types must be 16-bit integer */ +typedef short SHORT; +typedef unsigned short USHORT; +typedef unsigned short WORD; +typedef unsigned short WCHAR; + +/* These types must be 32-bit integer */ +typedef long LONG; +typedef unsigned long ULONG; +typedef unsigned long DWORD; + + +/* Error code */ +typedef enum { + JDR_OK = 0, /* 0: Succeeded */ + JDR_INTR, /* 1: Interrupted by output function */ + JDR_INP, /* 2: Device error or wrong termination of input stream */ + JDR_MEM1, /* 3: Insufficient memory pool for the image */ + JDR_MEM2, /* 4: Insufficient stream input buffer */ + JDR_PAR, /* 5: Parameter error */ + JDR_FMT1, /* 6: Data format error (may be damaged data) */ + JDR_FMT2, /* 7: Right format but not supported */ + JDR_FMT3 /* 8: Not supported JPEG standard */ +} JRESULT; + + + +/* Rectangular structure */ +typedef struct { + WORD left, right, top, bottom; +} JRECT; + + + +/* Decompressor object structure */ +typedef struct JDEC JDEC; +struct JDEC { + UINT dctr; /* Number of bytes available in the input buffer */ + BYTE* dptr; /* Current data read ptr */ + BYTE* inbuf; /* Bit stream input buffer */ + BYTE dmsk; /* Current bit in the current read byte */ + BYTE scale; /* Output scaling ratio */ + BYTE msx, msy; /* MCU size in unit of block (width, height) */ + BYTE qtid[3]; /* Quantization table ID of each component */ + SHORT dcv[3]; /* Previous DC element of each component */ + WORD nrst; /* Restart inverval */ + UINT width, height; /* Size of the input image (pixel) */ + BYTE* huffbits[2][2]; /* Huffman bit distribution tables [id][dcac] */ + WORD* huffcode[2][2]; /* Huffman code word tables [id][dcac] */ + BYTE* huffdata[2][2]; /* Huffman decoded data tables [id][dcac] */ + LONG* qttbl[4]; /* Dequaitizer tables [id] */ + void* workbuf; /* Working buffer for IDCT and RGB output */ + BYTE* mcubuf; /* Working buffer for the MCU */ + void* pool; /* Pointer to available memory pool */ + UINT sz_pool; /* Size of momory pool (bytes available) */ + UINT (*infunc)(JDEC*, BYTE*, UINT);/* Pointer to jpeg stream input function */ + void* device; /* Pointer to I/O device identifiler for the session */ +}; + + + +/* TJpgDec API functions */ +JRESULT jd_prepare (JDEC*, UINT(*)(JDEC*,BYTE*,UINT), void*, UINT, void*); +JRESULT jd_decomp (JDEC*, UINT(*)(JDEC*,void*,JRECT*), BYTE); + + +#ifdef __cplusplus +} +#endif + +#endif /* _TJPGDEC */ diff --git a/code/components/esp32-camera-master/target/esp32s2/tjpgd.c b/code/components/esp32-camera-master/target/esp32s2/tjpgd.c new file mode 100644 index 00000000..5a983c4c --- /dev/null +++ b/code/components/esp32-camera-master/target/esp32s2/tjpgd.c @@ -0,0 +1,970 @@ +/*----------------------------------------------------------------------------/ +/ TJpgDec - Tiny JPEG Decompressor R0.01b (C)ChaN, 2012 +/-----------------------------------------------------------------------------/ +/ The TJpgDec is a generic JPEG decompressor module for tiny embedded systems. +/ This is a free software that opened for education, research and commercial +/ developments under license policy of following terms. +/ +/ Copyright (C) 2012, ChaN, all right reserved. +/ +/ * The TJpgDec module is a free software and there is NO WARRANTY. +/ * No restriction on use. You can use, modify and redistribute it for +/ personal, non-profit or commercial products UNDER YOUR RESPONSIBILITY. +/ * Redistributions of source code must retain the above copyright notice. +/ +/-----------------------------------------------------------------------------/ +/ Oct 04,'11 R0.01 First release. +/ Feb 19,'12 R0.01a Fixed decompression fails when scan starts with an escape seq. +/ Sep 03,'12 R0.01b Added JD_TBLCLIP option. +/----------------------------------------------------------------------------*/ + +#include "tjpgd.h" + +#define SUPPORT_JPEG 1 + +#ifdef SUPPORT_JPEG +/*-----------------------------------------------*/ +/* Zigzag-order to raster-order conversion table */ +/*-----------------------------------------------*/ + +#define ZIG(n) Zig[n] + +static +const BYTE Zig[64] = { /* Zigzag-order to raster-order conversion table */ + 0, 1, 8, 16, 9, 2, 3, 10, 17, 24, 32, 25, 18, 11, 4, 5, + 12, 19, 26, 33, 40, 48, 41, 34, 27, 20, 13, 6, 7, 14, 21, 28, + 35, 42, 49, 56, 57, 50, 43, 36, 29, 22, 15, 23, 30, 37, 44, 51, + 58, 59, 52, 45, 38, 31, 39, 46, 53, 60, 61, 54, 47, 55, 62, 63 +}; + + + +/*-------------------------------------------------*/ +/* Input scale factor of Arai algorithm */ +/* (scaled up 16 bits for fixed point operations) */ +/*-------------------------------------------------*/ + +#define IPSF(n) Ipsf[n] + +static +const WORD Ipsf[64] = { /* See also aa_idct.png */ + (WORD)(1.00000*8192), (WORD)(1.38704*8192), (WORD)(1.30656*8192), (WORD)(1.17588*8192), (WORD)(1.00000*8192), (WORD)(0.78570*8192), (WORD)(0.54120*8192), (WORD)(0.27590*8192), + (WORD)(1.38704*8192), (WORD)(1.92388*8192), (WORD)(1.81226*8192), (WORD)(1.63099*8192), (WORD)(1.38704*8192), (WORD)(1.08979*8192), (WORD)(0.75066*8192), (WORD)(0.38268*8192), + (WORD)(1.30656*8192), (WORD)(1.81226*8192), (WORD)(1.70711*8192), (WORD)(1.53636*8192), (WORD)(1.30656*8192), (WORD)(1.02656*8192), (WORD)(0.70711*8192), (WORD)(0.36048*8192), + (WORD)(1.17588*8192), (WORD)(1.63099*8192), (WORD)(1.53636*8192), (WORD)(1.38268*8192), (WORD)(1.17588*8192), (WORD)(0.92388*8192), (WORD)(0.63638*8192), (WORD)(0.32442*8192), + (WORD)(1.00000*8192), (WORD)(1.38704*8192), (WORD)(1.30656*8192), (WORD)(1.17588*8192), (WORD)(1.00000*8192), (WORD)(0.78570*8192), (WORD)(0.54120*8192), (WORD)(0.27590*8192), + (WORD)(0.78570*8192), (WORD)(1.08979*8192), (WORD)(1.02656*8192), (WORD)(0.92388*8192), (WORD)(0.78570*8192), (WORD)(0.61732*8192), (WORD)(0.42522*8192), (WORD)(0.21677*8192), + (WORD)(0.54120*8192), (WORD)(0.75066*8192), (WORD)(0.70711*8192), (WORD)(0.63638*8192), (WORD)(0.54120*8192), (WORD)(0.42522*8192), (WORD)(0.29290*8192), (WORD)(0.14932*8192), + (WORD)(0.27590*8192), (WORD)(0.38268*8192), (WORD)(0.36048*8192), (WORD)(0.32442*8192), (WORD)(0.27590*8192), (WORD)(0.21678*8192), (WORD)(0.14932*8192), (WORD)(0.07612*8192) +}; + + + +/*---------------------------------------------*/ +/* Conversion table for fast clipping process */ +/*---------------------------------------------*/ + +#if JD_TBLCLIP + +#define BYTECLIP(v) Clip8[(UINT)(v) & 0x3FF] + +static +const BYTE Clip8[1024] = { + /* 0..255 */ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + /* 256..511 */ + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + /* -512..-257 */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* -256..-1 */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 +}; + +#else /* JD_TBLCLIP */ + +inline +BYTE BYTECLIP ( + INT val +) +{ + if (val < 0) val = 0; + if (val > 255) val = 255; + + return (BYTE)val; +} + +#endif + + + +/*-----------------------------------------------------------------------*/ +/* Allocate a memory block from memory pool */ +/*-----------------------------------------------------------------------*/ + +static +void* alloc_pool ( /* Pointer to allocated memory block (NULL:no memory available) */ + JDEC* jd, /* Pointer to the decompressor object */ + UINT nd /* Number of bytes to allocate */ +) +{ + char *rp = 0; + + + nd = (nd + 3) & ~3; /* Align block size to the word boundary */ + + if (jd->sz_pool >= nd) { + jd->sz_pool -= nd; + rp = (char*)jd->pool; /* Get start of available memory pool */ + jd->pool = (void*)(rp + nd); /* Allocate requierd bytes */ + } + + return (void*)rp; /* Return allocated memory block (NULL:no memory to allocate) */ +} + + + + +/*-----------------------------------------------------------------------*/ +/* Create de-quantization and prescaling tables with a DQT segment */ +/*-----------------------------------------------------------------------*/ + +static +UINT create_qt_tbl ( /* 0:OK, !0:Failed */ + JDEC* jd, /* Pointer to the decompressor object */ + const BYTE* data, /* Pointer to the quantizer tables */ + UINT ndata /* Size of input data */ +) +{ + UINT i; + BYTE d, z; + LONG *pb; + + + while (ndata) { /* Process all tables in the segment */ + if (ndata < 65) return JDR_FMT1; /* Err: table size is unaligned */ + ndata -= 65; + d = *data++; /* Get table property */ + if (d & 0xF0) return JDR_FMT1; /* Err: not 8-bit resolution */ + i = d & 3; /* Get table ID */ + pb = alloc_pool(jd, 64 * sizeof (LONG));/* Allocate a memory block for the table */ + if (!pb) return JDR_MEM1; /* Err: not enough memory */ + jd->qttbl[i] = pb; /* Register the table */ + for (i = 0; i < 64; i++) { /* Load the table */ + z = ZIG(i); /* Zigzag-order to raster-order conversion */ + pb[z] = (LONG)((DWORD)*data++ * IPSF(z)); /* Apply scale factor of Arai algorithm to the de-quantizers */ + } + } + + return JDR_OK; +} + + + + +/*-----------------------------------------------------------------------*/ +/* Create huffman code tables with a DHT segment */ +/*-----------------------------------------------------------------------*/ + +static +UINT create_huffman_tbl ( /* 0:OK, !0:Failed */ + JDEC* jd, /* Pointer to the decompressor object */ + const BYTE* data, /* Pointer to the packed huffman tables */ + UINT ndata /* Size of input data */ +) +{ + UINT i, j, b, np, cls, num; + BYTE d, *pb, *pd; + WORD hc, *ph; + + + while (ndata) { /* Process all tables in the segment */ + if (ndata < 17) return JDR_FMT1; /* Err: wrong data size */ + ndata -= 17; + d = *data++; /* Get table number and class */ + cls = (d >> 4); num = d & 0x0F; /* class = dc(0)/ac(1), table number = 0/1 */ + if (d & 0xEE) return JDR_FMT1; /* Err: invalid class/number */ + pb = alloc_pool(jd, 16); /* Allocate a memory block for the bit distribution table */ + if (!pb) return JDR_MEM1; /* Err: not enough memory */ + jd->huffbits[num][cls] = pb; + for (np = i = 0; i < 16; i++) { /* Load number of patterns for 1 to 16-bit code */ + pb[i] = b = *data++; + np += b; /* Get sum of code words for each code */ + } + + ph = alloc_pool(jd, np * sizeof (WORD));/* Allocate a memory block for the code word table */ + if (!ph) return JDR_MEM1; /* Err: not enough memory */ + jd->huffcode[num][cls] = ph; + hc = 0; + for (j = i = 0; i < 16; i++) { /* Re-build huffman code word table */ + b = pb[i]; + while (b--) ph[j++] = hc++; + hc <<= 1; + } + + if (ndata < np) return JDR_FMT1; /* Err: wrong data size */ + ndata -= np; + pd = alloc_pool(jd, np); /* Allocate a memory block for the decoded data */ + if (!pd) return JDR_MEM1; /* Err: not enough memory */ + jd->huffdata[num][cls] = pd; + for (i = 0; i < np; i++) { /* Load decoded data corresponds to each code ward */ + d = *data++; + if (!cls && d > 11) return JDR_FMT1; + *pd++ = d; + } + } + + return JDR_OK; +} + + + + +/*-----------------------------------------------------------------------*/ +/* Extract N bits from input stream */ +/*-----------------------------------------------------------------------*/ + +static +INT bitext ( /* >=0: extracted data, <0: error code */ + JDEC* jd, /* Pointer to the decompressor object */ + UINT nbit /* Number of bits to extract (1 to 11) */ +) +{ + BYTE msk, s, *dp; + UINT dc, v, f; + + + msk = jd->dmsk; dc = jd->dctr; dp = jd->dptr; /* Bit mask, number of data available, read ptr */ + s = *dp; v = f = 0; + do { + if (!msk) { /* Next byte? */ + if (!dc) { /* No input data is available, re-fill input buffer */ + dp = jd->inbuf; /* Top of input buffer */ + dc = jd->infunc(jd, dp, JD_SZBUF); + if (!dc) return 0 - (INT)JDR_INP; /* Err: read error or wrong stream termination */ + } else { + dp++; /* Next data ptr */ + } + dc--; /* Decrement number of available bytes */ + if (f) { /* In flag sequence? */ + f = 0; /* Exit flag sequence */ + if (*dp != 0) return 0 - (INT)JDR_FMT1; /* Err: unexpected flag is detected (may be collapted data) */ + *dp = s = 0xFF; /* The flag is a data 0xFF */ + } else { + s = *dp; /* Get next data byte */ + if (s == 0xFF) { /* Is start of flag sequence? */ + f = 1; continue; /* Enter flag sequence */ + } + } + msk = 0x80; /* Read from MSB */ + } + v <<= 1; /* Get a bit */ + if (s & msk) v++; + msk >>= 1; + nbit--; + } while (nbit); + jd->dmsk = msk; jd->dctr = dc; jd->dptr = dp; + + return (INT)v; +} + + + + +/*-----------------------------------------------------------------------*/ +/* Extract a huffman decoded data from input stream */ +/*-----------------------------------------------------------------------*/ + +static +INT huffext ( /* >=0: decoded data, <0: error code */ + JDEC* jd, /* Pointer to the decompressor object */ + const BYTE* hbits, /* Pointer to the bit distribution table */ + const WORD* hcode, /* Pointer to the code word table */ + const BYTE* hdata /* Pointer to the data table */ +) +{ + BYTE msk, s, *dp; + UINT dc, v, f, bl, nd; + + + msk = jd->dmsk; dc = jd->dctr; dp = jd->dptr; /* Bit mask, number of data available, read ptr */ + s = *dp; v = f = 0; + bl = 16; /* Max code length */ + do { + if (!msk) { /* Next byte? */ + if (!dc) { /* No input data is available, re-fill input buffer */ + dp = jd->inbuf; /* Top of input buffer */ + dc = jd->infunc(jd, dp, JD_SZBUF); + if (!dc) return 0 - (INT)JDR_INP; /* Err: read error or wrong stream termination */ + } else { + dp++; /* Next data ptr */ + } + dc--; /* Decrement number of available bytes */ + if (f) { /* In flag sequence? */ + f = 0; /* Exit flag sequence */ + if (*dp != 0) + return 0 - (INT)JDR_FMT1; /* Err: unexpected flag is detected (may be collapted data) */ + *dp = s = 0xFF; /* The flag is a data 0xFF */ + } else { + s = *dp; /* Get next data byte */ + if (s == 0xFF) { /* Is start of flag sequence? */ + f = 1; continue; /* Enter flag sequence, get trailing byte */ + } + } + msk = 0x80; /* Read from MSB */ + } + v <<= 1; /* Get a bit */ + if (s & msk) v++; + msk >>= 1; + + for (nd = *hbits++; nd; nd--) { /* Search the code word in this bit length */ + if (v == *hcode++) { /* Matched? */ + jd->dmsk = msk; jd->dctr = dc; jd->dptr = dp; + return *hdata; /* Return the decoded data */ + } + hdata++; + } + bl--; + } while (bl); + + return 0 - (INT)JDR_FMT1; /* Err: code not found (may be collapted data) */ +} + + + + +/*-----------------------------------------------------------------------*/ +/* Apply Inverse-DCT in Arai Algorithm (see also aa_idct.png) */ +/*-----------------------------------------------------------------------*/ + +static +void block_idct ( + LONG* src, /* Input block data (de-quantized and pre-scaled for Arai Algorithm) */ + BYTE* dst /* Pointer to the destination to store the block as byte array */ +) +{ + const LONG M13 = (LONG)(1.41421*4096), M2 = (LONG)(1.08239*4096), M4 = (LONG)(2.61313*4096), M5 = (LONG)(1.84776*4096); + LONG v0, v1, v2, v3, v4, v5, v6, v7; + LONG t10, t11, t12, t13; + UINT i; + + /* Process columns */ + for (i = 0; i < 8; i++) { + v0 = src[8 * 0]; /* Get even elements */ + v1 = src[8 * 2]; + v2 = src[8 * 4]; + v3 = src[8 * 6]; + + t10 = v0 + v2; /* Process the even elements */ + t12 = v0 - v2; + t11 = (v1 - v3) * M13 >> 12; + v3 += v1; + t11 -= v3; + v0 = t10 + v3; + v3 = t10 - v3; + v1 = t11 + t12; + v2 = t12 - t11; + + v4 = src[8 * 7]; /* Get odd elements */ + v5 = src[8 * 1]; + v6 = src[8 * 5]; + v7 = src[8 * 3]; + + t10 = v5 - v4; /* Process the odd elements */ + t11 = v5 + v4; + t12 = v6 - v7; + v7 += v6; + v5 = (t11 - v7) * M13 >> 12; + v7 += t11; + t13 = (t10 + t12) * M5 >> 12; + v4 = t13 - (t10 * M2 >> 12); + v6 = t13 - (t12 * M4 >> 12) - v7; + v5 -= v6; + v4 -= v5; + + src[8 * 0] = v0 + v7; /* Write-back transformed values */ + src[8 * 7] = v0 - v7; + src[8 * 1] = v1 + v6; + src[8 * 6] = v1 - v6; + src[8 * 2] = v2 + v5; + src[8 * 5] = v2 - v5; + src[8 * 3] = v3 + v4; + src[8 * 4] = v3 - v4; + + src++; /* Next column */ + } + + /* Process rows */ + src -= 8; + for (i = 0; i < 8; i++) { + v0 = src[0] + (128L << 8); /* Get even elements (remove DC offset (-128) here) */ + v1 = src[2]; + v2 = src[4]; + v3 = src[6]; + + t10 = v0 + v2; /* Process the even elements */ + t12 = v0 - v2; + t11 = (v1 - v3) * M13 >> 12; + v3 += v1; + t11 -= v3; + v0 = t10 + v3; + v3 = t10 - v3; + v1 = t11 + t12; + v2 = t12 - t11; + + v4 = src[7]; /* Get odd elements */ + v5 = src[1]; + v6 = src[5]; + v7 = src[3]; + + t10 = v5 - v4; /* Process the odd elements */ + t11 = v5 + v4; + t12 = v6 - v7; + v7 += v6; + v5 = (t11 - v7) * M13 >> 12; + v7 += t11; + t13 = (t10 + t12) * M5 >> 12; + v4 = t13 - (t10 * M2 >> 12); + v6 = t13 - (t12 * M4 >> 12) - v7; + v5 -= v6; + v4 -= v5; + + dst[0] = BYTECLIP((v0 + v7) >> 8); /* Descale the transformed values 8 bits and output */ + dst[7] = BYTECLIP((v0 - v7) >> 8); + dst[1] = BYTECLIP((v1 + v6) >> 8); + dst[6] = BYTECLIP((v1 - v6) >> 8); + dst[2] = BYTECLIP((v2 + v5) >> 8); + dst[5] = BYTECLIP((v2 - v5) >> 8); + dst[3] = BYTECLIP((v3 + v4) >> 8); + dst[4] = BYTECLIP((v3 - v4) >> 8); + dst += 8; + + src += 8; /* Next row */ + } +} + + + + +/*-----------------------------------------------------------------------*/ +/* Load all blocks in the MCU into working buffer */ +/*-----------------------------------------------------------------------*/ + +static +JRESULT mcu_load ( + JDEC* jd /* Pointer to the decompressor object */ +) +{ + LONG *tmp = (LONG*)jd->workbuf; /* Block working buffer for de-quantize and IDCT */ + UINT blk, nby, nbc, i, z, id, cmp; + INT b, d, e; + BYTE *bp; + const BYTE *hb, *hd; + const WORD *hc; + const LONG *dqf; + + + nby = jd->msx * jd->msy; /* Number of Y blocks (1, 2 or 4) */ + nbc = 2; /* Number of C blocks (2) */ + bp = jd->mcubuf; /* Pointer to the first block */ + + for (blk = 0; blk < nby + nbc; blk++) { + cmp = (blk < nby) ? 0 : blk - nby + 1; /* Component number 0:Y, 1:Cb, 2:Cr */ + id = cmp ? 1 : 0; /* Huffman table ID of the component */ + + /* Extract a DC element from input stream */ + hb = jd->huffbits[id][0]; /* Huffman table for the DC element */ + hc = jd->huffcode[id][0]; + hd = jd->huffdata[id][0]; + b = huffext(jd, hb, hc, hd); /* Extract a huffman coded data (bit length) */ + if (b < 0) return 0 - b; /* Err: invalid code or input */ + d = jd->dcv[cmp]; /* DC value of previous block */ + if (b) { /* If there is any difference from previous block */ + e = bitext(jd, b); /* Extract data bits */ + if (e < 0) return 0 - e; /* Err: input */ + b = 1 << (b - 1); /* MSB position */ + if (!(e & b)) e -= (b << 1) - 1; /* Restore sign if needed */ + d += e; /* Get current value */ + jd->dcv[cmp] = (SHORT)d; /* Save current DC value for next block */ + } + dqf = jd->qttbl[jd->qtid[cmp]]; /* De-quantizer table ID for this component */ + tmp[0] = d * dqf[0] >> 8; /* De-quantize, apply scale factor of Arai algorithm and descale 8 bits */ + + /* Extract following 63 AC elements from input stream */ + for (i = 1; i < 64; i++) tmp[i] = 0; /* Clear rest of elements */ + hb = jd->huffbits[id][1]; /* Huffman table for the AC elements */ + hc = jd->huffcode[id][1]; + hd = jd->huffdata[id][1]; + i = 1; /* Top of the AC elements */ + do { + b = huffext(jd, hb, hc, hd); /* Extract a huffman coded value (zero runs and bit length) */ + if (b == 0) break; /* EOB? */ + if (b < 0) return 0 - b; /* Err: invalid code or input error */ + z = (UINT)b >> 4; /* Number of leading zero elements */ + if (z) { + i += z; /* Skip zero elements */ + if (i >= 64) return JDR_FMT1; /* Too long zero run */ + } + if (b &= 0x0F) { /* Bit length */ + d = bitext(jd, b); /* Extract data bits */ + if (d < 0) return 0 - d; /* Err: input device */ + b = 1 << (b - 1); /* MSB position */ + if (!(d & b)) d -= (b << 1) - 1;/* Restore negative value if needed */ + z = ZIG(i); /* Zigzag-order to raster-order converted index */ + tmp[z] = d * dqf[z] >> 8; /* De-quantize, apply scale factor of Arai algorithm and descale 8 bits */ + } + } while (++i < 64); /* Next AC element */ + + if (JD_USE_SCALE && jd->scale == 3) + *bp = (*tmp / 256) + 128; /* If scale ratio is 1/8, IDCT can be ommited and only DC element is used */ + else + block_idct(tmp, bp); /* Apply IDCT and store the block to the MCU buffer */ + + bp += 64; /* Next block */ + } + + return JDR_OK; /* All blocks have been loaded successfully */ +} + + + + +/*-----------------------------------------------------------------------*/ +/* Output an MCU: Convert YCrCb to RGB and output it in RGB form */ +/*-----------------------------------------------------------------------*/ + +static +JRESULT mcu_output ( + JDEC* jd, /* Pointer to the decompressor object */ + UINT (*outfunc)(JDEC*, void*, JRECT*), /* RGB output function */ + UINT x, /* MCU position in the image (left of the MCU) */ + UINT y /* MCU position in the image (top of the MCU) */ +) +{ + const INT CVACC = (sizeof (INT) > 2) ? 1024 : 128; + UINT ix, iy, mx, my, rx, ry; + INT yy, cb, cr; + BYTE *py, *pc, *rgb24; + JRECT rect; + + + mx = jd->msx * 8; my = jd->msy * 8; /* MCU size (pixel) */ + rx = (x + mx <= jd->width) ? mx : jd->width - x; /* Output rectangular size (it may be clipped at right/bottom end) */ + ry = (y + my <= jd->height) ? my : jd->height - y; + if (JD_USE_SCALE) { + rx >>= jd->scale; ry >>= jd->scale; + if (!rx || !ry) return JDR_OK; /* Skip this MCU if all pixel is to be rounded off */ + x >>= jd->scale; y >>= jd->scale; + } + rect.left = x; rect.right = x + rx - 1; /* Rectangular area in the frame buffer */ + rect.top = y; rect.bottom = y + ry - 1; + + + if (!JD_USE_SCALE || jd->scale != 3) { /* Not for 1/8 scaling */ + + /* Build an RGB MCU from discrete comopnents */ + rgb24 = (BYTE*)jd->workbuf; + for (iy = 0; iy < my; iy++) { + pc = jd->mcubuf; + py = pc + iy * 8; + if (my == 16) { /* Double block height? */ + pc += 64 * 4 + (iy >> 1) * 8; + if (iy >= 8) py += 64; + } else { /* Single block height */ + pc += mx * 8 + iy * 8; + } + for (ix = 0; ix < mx; ix++) { + cb = pc[0] - 128; /* Get Cb/Cr component and restore right level */ + cr = pc[64] - 128; + if (mx == 16) { /* Double block width? */ + if (ix == 8) py += 64 - 8; /* Jump to next block if double block heigt */ + pc += ix & 1; /* Increase chroma pointer every two pixels */ + } else { /* Single block width */ + pc++; /* Increase chroma pointer every pixel */ + } + yy = *py++; /* Get Y component */ + + /* Convert YCbCr to RGB */ + *rgb24++ = /* R */ BYTECLIP(yy + ((INT)(1.402 * CVACC) * cr) / CVACC); + *rgb24++ = /* G */ BYTECLIP(yy - ((INT)(0.344 * CVACC) * cb + (INT)(0.714 * CVACC) * cr) / CVACC); + *rgb24++ = /* B */ BYTECLIP(yy + ((INT)(1.772 * CVACC) * cb) / CVACC); + } + } + + /* Descale the MCU rectangular if needed */ + if (JD_USE_SCALE && jd->scale) { + UINT x, y, r, g, b, s, w, a; + BYTE *op; + + /* Get averaged RGB value of each square correcponds to a pixel */ + s = jd->scale * 2; /* Bumber of shifts for averaging */ + w = 1 << jd->scale; /* Width of square */ + a = (mx - w) * 3; /* Bytes to skip for next line in the square */ + op = (BYTE*)jd->workbuf; + for (iy = 0; iy < my; iy += w) { + for (ix = 0; ix < mx; ix += w) { + rgb24 = (BYTE*)jd->workbuf + (iy * mx + ix) * 3; + r = g = b = 0; + for (y = 0; y < w; y++) { /* Accumulate RGB value in the square */ + for (x = 0; x < w; x++) { + r += *rgb24++; + g += *rgb24++; + b += *rgb24++; + } + rgb24 += a; + } /* Put the averaged RGB value as a pixel */ + *op++ = (BYTE)(r >> s); + *op++ = (BYTE)(g >> s); + *op++ = (BYTE)(b >> s); + } + } + } + + } else { /* For only 1/8 scaling (left-top pixel in each block are the DC value of the block) */ + + /* Build a 1/8 descaled RGB MCU from discrete comopnents */ + rgb24 = (BYTE*)jd->workbuf; + pc = jd->mcubuf + mx * my; + cb = pc[0] - 128; /* Get Cb/Cr component and restore right level */ + cr = pc[64] - 128; + for (iy = 0; iy < my; iy += 8) { + py = jd->mcubuf; + if (iy == 8) py += 64 * 2; + for (ix = 0; ix < mx; ix += 8) { + yy = *py; /* Get Y component */ + py += 64; + + /* Convert YCbCr to RGB */ + *rgb24++ = /* R */ BYTECLIP(yy + ((INT)(1.402 * CVACC) * cr / CVACC)); + *rgb24++ = /* G */ BYTECLIP(yy - ((INT)(0.344 * CVACC) * cb + (INT)(0.714 * CVACC) * cr) / CVACC); + *rgb24++ = /* B */ BYTECLIP(yy + ((INT)(1.772 * CVACC) * cb / CVACC)); + } + } + } + + /* Squeeze up pixel table if a part of MCU is to be truncated */ + mx >>= jd->scale; + if (rx < mx) { + BYTE *s, *d; + UINT x, y; + + s = d = (BYTE*)jd->workbuf; + for (y = 0; y < ry; y++) { + for (x = 0; x < rx; x++) { /* Copy effective pixels */ + *d++ = *s++; + *d++ = *s++; + *d++ = *s++; + } + s += (mx - rx) * 3; /* Skip truncated pixels */ + } + } + + /* Convert RGB888 to RGB565 if needed */ + if (JD_FORMAT == 1) { + BYTE *s = (BYTE*)jd->workbuf; + WORD w, *d = (WORD*)s; + UINT n = rx * ry; + + do { + w = (*s++ & 0xF8) << 8; /* RRRRR----------- */ + w |= (*s++ & 0xFC) << 3; /* -----GGGGGG----- */ + w |= *s++ >> 3; /* -----------BBBBB */ + *d++ = w; + } while (--n); + } + + /* Output the RGB rectangular */ + return outfunc(jd, jd->workbuf, &rect) ? JDR_OK : JDR_INTR; +} + + + + +/*-----------------------------------------------------------------------*/ +/* Process restart interval */ +/*-----------------------------------------------------------------------*/ + +static +JRESULT restart ( + JDEC* jd, /* Pointer to the decompressor object */ + WORD rstn /* Expected restert sequense number */ +) +{ + UINT i, dc; + WORD d; + BYTE *dp; + + + /* Discard padding bits and get two bytes from the input stream */ + dp = jd->dptr; dc = jd->dctr; + d = 0; + for (i = 0; i < 2; i++) { + if (!dc) { /* No input data is available, re-fill input buffer */ + dp = jd->inbuf; + dc = jd->infunc(jd, dp, JD_SZBUF); + if (!dc) return JDR_INP; + } else { + dp++; + } + dc--; + d = (d << 8) | *dp; /* Get a byte */ + } + jd->dptr = dp; jd->dctr = dc; jd->dmsk = 0; + + /* Check the marker */ + if ((d & 0xFFD8) != 0xFFD0 || (d & 7) != (rstn & 7)) + return JDR_FMT1; /* Err: expected RSTn marker is not detected (may be collapted data) */ + + /* Reset DC offset */ + jd->dcv[2] = jd->dcv[1] = jd->dcv[0] = 0; + + return JDR_OK; +} + + + + +/*-----------------------------------------------------------------------*/ +/* Analyze the JPEG image and Initialize decompressor object */ +/*-----------------------------------------------------------------------*/ + +#define LDB_WORD(ptr) (WORD)(((WORD)*((BYTE*)(ptr))<<8)|(WORD)*(BYTE*)((ptr)+1)) + + +JRESULT jd_prepare ( + JDEC* jd, /* Blank decompressor object */ + UINT (*infunc)(JDEC*, BYTE*, UINT), /* JPEG strem input function */ + void* pool, /* Working buffer for the decompression session */ + UINT sz_pool, /* Size of working buffer */ + void* dev /* I/O device identifier for the session */ +) +{ + BYTE *seg, b; + WORD marker; + DWORD ofs; + UINT n, i, j, len; + JRESULT rc; + + + if (!pool) return JDR_PAR; + + jd->pool = pool; /* Work memroy */ + jd->sz_pool = sz_pool; /* Size of given work memory */ + jd->infunc = infunc; /* Stream input function */ + jd->device = dev; /* I/O device identifier */ + jd->nrst = 0; /* No restart interval (default) */ + + for (i = 0; i < 2; i++) { /* Nulls pointers */ + for (j = 0; j < 2; j++) { + jd->huffbits[i][j] = 0; + jd->huffcode[i][j] = 0; + jd->huffdata[i][j] = 0; + } + } + for (i = 0; i < 4; i++) jd->qttbl[i] = 0; + + jd->inbuf = seg = alloc_pool(jd, JD_SZBUF); /* Allocate stream input buffer */ + if (!seg) return JDR_MEM1; + + if (jd->infunc(jd, seg, 2) != 2) return JDR_INP;/* Check SOI marker */ + if (LDB_WORD(seg) != 0xFFD8) return JDR_FMT1; /* Err: SOI is not detected */ + ofs = 2; + + for (;;) { + /* Get a JPEG marker */ + if (jd->infunc(jd, seg, 4) != 4) return JDR_INP; + marker = LDB_WORD(seg); /* Marker */ + len = LDB_WORD(seg + 2); /* Length field */ + if (len <= 2 || (marker >> 8) != 0xFF) return JDR_FMT1; + len -= 2; /* Content size excluding length field */ + ofs += 4 + len; /* Number of bytes loaded */ + + switch (marker & 0xFF) { + case 0xC0: /* SOF0 (baseline JPEG) */ + /* Load segment data */ + if (len > JD_SZBUF) return JDR_MEM2; + if (jd->infunc(jd, seg, len) != len) return JDR_INP; + + jd->width = LDB_WORD(seg+3); /* Image width in unit of pixel */ + jd->height = LDB_WORD(seg+1); /* Image height in unit of pixel */ + if (seg[5] != 3) return JDR_FMT3; /* Err: Supports only Y/Cb/Cr format */ + + /* Check three image components */ + for (i = 0; i < 3; i++) { + b = seg[7 + 3 * i]; /* Get sampling factor */ + if (!i) { /* Y component */ + if (b != 0x11 && b != 0x22 && b != 0x21)/* Check sampling factor */ + return JDR_FMT3; /* Err: Supports only 4:4:4, 4:2:0 or 4:2:2 */ + jd->msx = b >> 4; jd->msy = b & 15; /* Size of MCU [blocks] */ + } else { /* Cb/Cr component */ + if (b != 0x11) return JDR_FMT3; /* Err: Sampling factor of Cr/Cb must be 1 */ + } + b = seg[8 + 3 * i]; /* Get dequantizer table ID for this component */ + if (b > 3) return JDR_FMT3; /* Err: Invalid ID */ + jd->qtid[i] = b; + } + break; + + case 0xDD: /* DRI */ + /* Load segment data */ + if (len > JD_SZBUF) return JDR_MEM2; + if (jd->infunc(jd, seg, len) != len) return JDR_INP; + + /* Get restart interval (MCUs) */ + jd->nrst = LDB_WORD(seg); + break; + + case 0xC4: /* DHT */ + /* Load segment data */ + if (len > JD_SZBUF) return JDR_MEM2; + if (jd->infunc(jd, seg, len) != len) return JDR_INP; + + /* Create huffman tables */ + rc = create_huffman_tbl(jd, seg, len); + if (rc) return rc; + break; + + case 0xDB: /* DQT */ + /* Load segment data */ + if (len > JD_SZBUF) return JDR_MEM2; + if (jd->infunc(jd, seg, len) != len) return JDR_INP; + + /* Create de-quantizer tables */ + rc = create_qt_tbl(jd, seg, len); + if (rc) return rc; + break; + + case 0xDA: /* SOS */ + /* Load segment data */ + if (len > JD_SZBUF) return JDR_MEM2; + if (jd->infunc(jd, seg, len) != len) return JDR_INP; + + if (!jd->width || !jd->height) return JDR_FMT1; /* Err: Invalid image size */ + + if (seg[0] != 3) return JDR_FMT3; /* Err: Supports only three color components format */ + + /* Check if all tables corresponding to each components have been loaded */ + for (i = 0; i < 3; i++) { + b = seg[2 + 2 * i]; /* Get huffman table ID */ + if (b != 0x00 && b != 0x11) return JDR_FMT3; /* Err: Different table number for DC/AC element */ + b = i ? 1 : 0; + if (!jd->huffbits[b][0] || !jd->huffbits[b][1]) /* Check huffman table for this component */ + return JDR_FMT1; /* Err: Huffman table not loaded */ + if (!jd->qttbl[jd->qtid[i]]) return JDR_FMT1; /* Err: Dequantizer table not loaded */ + } + + /* Allocate working buffer for MCU and RGB */ + n = jd->msy * jd->msx; /* Number of Y blocks in the MCU */ + if (!n) return JDR_FMT1; /* Err: SOF0 has not been loaded */ + len = n * 64 * 2 + 64; /* Allocate buffer for IDCT and RGB output */ + if (len < 256) len = 256; /* but at least 256 byte is required for IDCT */ + jd->workbuf = alloc_pool(jd, len); /* and it may occupy a part of following MCU working buffer for RGB output */ + if (!jd->workbuf) return JDR_MEM1; /* Err: not enough memory */ + jd->mcubuf = alloc_pool(jd, (n + 2) * 64); /* Allocate MCU working buffer */ + if (!jd->mcubuf) return JDR_MEM1; /* Err: not enough memory */ + + /* Pre-load the JPEG data to extract it from the bit stream */ + jd->dptr = seg; jd->dctr = 0; jd->dmsk = 0; /* Prepare to read bit stream */ + if (ofs %= JD_SZBUF) { /* Align read offset to JD_SZBUF */ + jd->dctr = jd->infunc(jd, seg + ofs, JD_SZBUF - (UINT)ofs); + jd->dptr = seg + ofs - 1; + } + + return JDR_OK; /* Initialization succeeded. Ready to decompress the JPEG image. */ + + case 0xC1: /* SOF1 */ + case 0xC2: /* SOF2 */ + case 0xC3: /* SOF3 */ + case 0xC5: /* SOF5 */ + case 0xC6: /* SOF6 */ + case 0xC7: /* SOF7 */ + case 0xC9: /* SOF9 */ + case 0xCA: /* SOF10 */ + case 0xCB: /* SOF11 */ + case 0xCD: /* SOF13 */ + case 0xCE: /* SOF14 */ + case 0xCF: /* SOF15 */ + case 0xD9: /* EOI */ + return JDR_FMT3; /* Unsuppoted JPEG standard (may be progressive JPEG) */ + + default: /* Unknown segment (comment, exif or etc..) */ + /* Skip segment data */ + if (jd->infunc(jd, 0, len) != len) /* Null pointer specifies to skip bytes of stream */ + return JDR_INP; + } + } +} + + + + +/*-----------------------------------------------------------------------*/ +/* Start to decompress the JPEG picture */ +/*-----------------------------------------------------------------------*/ + +JRESULT jd_decomp ( + JDEC* jd, /* Initialized decompression object */ + UINT (*outfunc)(JDEC*, void*, JRECT*), /* RGB output function */ + BYTE scale /* Output de-scaling factor (0 to 3) */ +) +{ + UINT x, y, mx, my; + WORD rst, rsc; + JRESULT rc; + + + if (scale > (JD_USE_SCALE ? 3 : 0)) return JDR_PAR; + jd->scale = scale; + + mx = jd->msx * 8; my = jd->msy * 8; /* Size of the MCU (pixel) */ + + jd->dcv[2] = jd->dcv[1] = jd->dcv[0] = 0; /* Initialize DC values */ + rst = rsc = 0; + + rc = JDR_OK; + for (y = 0; y < jd->height; y += my) { /* Vertical loop of MCUs */ + for (x = 0; x < jd->width; x += mx) { /* Horizontal loop of MCUs */ + if (jd->nrst && rst++ == jd->nrst) { /* Process restart interval if enabled */ + rc = restart(jd, rsc++); + if (rc != JDR_OK) return rc; + rst = 1; + } + rc = mcu_load(jd); /* Load an MCU (decompress huffman coded stream and apply IDCT) */ + if (rc != JDR_OK) return rc; + rc = mcu_output(jd, outfunc, x, y); /* Output the MCU (color space conversion, scaling and output) */ + if (rc != JDR_OK) return rc; + } + } + + return rc; +} +#endif//SUPPORT_JPEG + + diff --git a/code/components/esp32-camera-master/target/esp32s3/ll_cam.c b/code/components/esp32-camera-master/target/esp32s3/ll_cam.c new file mode 100644 index 00000000..9a1f185c --- /dev/null +++ b/code/components/esp32-camera-master/target/esp32s3/ll_cam.c @@ -0,0 +1,452 @@ +// Copyright 2010-2020 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include "soc/system_reg.h" +#include "soc/lcd_cam_struct.h" +#include "soc/lcd_cam_reg.h" +#include "soc/gdma_struct.h" +#include "soc/gdma_periph.h" +#include "soc/gdma_reg.h" +#include "ll_cam.h" +#include "cam_hal.h" + +static const char *TAG = "s3 ll_cam"; + +static void IRAM_ATTR ll_cam_vsync_isr(void *arg) +{ + //DBG_PIN_SET(1); + cam_obj_t *cam = (cam_obj_t *)arg; + BaseType_t HPTaskAwoken = pdFALSE; + + typeof(LCD_CAM.lc_dma_int_st) status = LCD_CAM.lc_dma_int_st; + if (status.val == 0) { + return; + } + + LCD_CAM.lc_dma_int_clr.val = status.val; + + if (status.cam_vsync_int_st) { + ll_cam_send_event(cam, CAM_VSYNC_EVENT, &HPTaskAwoken); + } + + if (HPTaskAwoken == pdTRUE) { + portYIELD_FROM_ISR(); + } + //DBG_PIN_SET(0); +} + +static void IRAM_ATTR ll_cam_dma_isr(void *arg) +{ + cam_obj_t *cam = (cam_obj_t *)arg; + BaseType_t HPTaskAwoken = pdFALSE; + + typeof(GDMA.channel[cam->dma_num].in.int_st) status = GDMA.channel[cam->dma_num].in.int_st; + if (status.val == 0) { + return; + } + + GDMA.channel[cam->dma_num].in.int_clr.val = status.val; + + if (status.in_suc_eof) { + ll_cam_send_event(cam, CAM_IN_SUC_EOF_EVENT, &HPTaskAwoken); + } + + if (HPTaskAwoken == pdTRUE) { + portYIELD_FROM_ISR(); + } +} + +bool ll_cam_stop(cam_obj_t *cam) +{ + if (cam->jpeg_mode || !cam->psram_mode) { + GDMA.channel[cam->dma_num].in.int_ena.in_suc_eof = 0; + GDMA.channel[cam->dma_num].in.int_clr.in_suc_eof = 1; + } + GDMA.channel[cam->dma_num].in.link.stop = 1; + return true; +} + +esp_err_t ll_cam_deinit(cam_obj_t *cam) +{ + if (cam->cam_intr_handle) { + esp_intr_free(cam->cam_intr_handle); + cam->cam_intr_handle = NULL; + } + + if (cam->dma_intr_handle) { + esp_intr_free(cam->dma_intr_handle); + cam->dma_intr_handle = NULL; + } + GDMA.channel[cam->dma_num].in.link.addr = 0x0; + + LCD_CAM.cam_ctrl1.cam_start = 0; + LCD_CAM.cam_ctrl1.cam_reset = 1; + LCD_CAM.cam_ctrl1.cam_reset = 0; + return ESP_OK; +} + +bool ll_cam_start(cam_obj_t *cam, int frame_pos) +{ + LCD_CAM.cam_ctrl1.cam_start = 0; + + if (cam->jpeg_mode || !cam->psram_mode) { + GDMA.channel[cam->dma_num].in.int_clr.in_suc_eof = 1; + GDMA.channel[cam->dma_num].in.int_ena.in_suc_eof = 1; + } + + LCD_CAM.cam_ctrl1.cam_reset = 1; + LCD_CAM.cam_ctrl1.cam_reset = 0; + LCD_CAM.cam_ctrl1.cam_afifo_reset = 1; + LCD_CAM.cam_ctrl1.cam_afifo_reset = 0; + GDMA.channel[cam->dma_num].in.conf0.in_rst = 1; + GDMA.channel[cam->dma_num].in.conf0.in_rst = 0; + + LCD_CAM.cam_ctrl1.cam_rec_data_bytelen = cam->dma_half_buffer_size - 1; // Ping pong operation + + if (!cam->psram_mode) { + GDMA.channel[cam->dma_num].in.link.addr = ((uint32_t)&cam->dma[0]) & 0xfffff; + } else { + GDMA.channel[cam->dma_num].in.link.addr = ((uint32_t)&cam->frames[frame_pos].dma[0]) & 0xfffff; + } + + GDMA.channel[cam->dma_num].in.link.start = 1; + + LCD_CAM.cam_ctrl.cam_update = 1; + LCD_CAM.cam_ctrl1.cam_start = 1; + return true; +} + +static esp_err_t ll_cam_dma_init(cam_obj_t *cam) +{ + for (int x = (SOC_GDMA_PAIRS_PER_GROUP - 1); x >= 0; x--) { + if (GDMA.channel[x].in.link.addr == 0x0) { + cam->dma_num = x; + ESP_LOGI(TAG, "DMA Channel=%d", cam->dma_num); + break; + } + if (x == 0) { + cam_deinit(); + ESP_LOGE(TAG, "Can't found available GDMA channel"); + return ESP_FAIL; + } + } + + if (REG_GET_BIT(SYSTEM_PERIP_CLK_EN1_REG, SYSTEM_DMA_CLK_EN) == 0) { + REG_CLR_BIT(SYSTEM_PERIP_CLK_EN1_REG, SYSTEM_DMA_CLK_EN); + REG_SET_BIT(SYSTEM_PERIP_CLK_EN1_REG, SYSTEM_DMA_CLK_EN); + REG_SET_BIT(SYSTEM_PERIP_RST_EN1_REG, SYSTEM_DMA_RST); + REG_CLR_BIT(SYSTEM_PERIP_RST_EN1_REG, SYSTEM_DMA_RST); + } + + GDMA.channel[cam->dma_num].in.int_clr.val = ~0; + GDMA.channel[cam->dma_num].in.int_ena.val = 0; + + GDMA.channel[cam->dma_num].in.conf0.val = 0; + GDMA.channel[cam->dma_num].in.conf0.in_rst = 1; + GDMA.channel[cam->dma_num].in.conf0.in_rst = 0; + + //internal SRAM only + if (!cam->psram_mode) { + GDMA.channel[cam->dma_num].in.conf0.indscr_burst_en = 1; + GDMA.channel[cam->dma_num].in.conf0.in_data_burst_en = 1; + } + + GDMA.channel[cam->dma_num].in.conf1.in_check_owner = 0; + + GDMA.channel[cam->dma_num].in.peri_sel.sel = 5; + //GDMA.channel[cam->dma_num].in.pri.rx_pri = 1;//rx prio 0-15 + //GDMA.channel[cam->dma_num].in.sram_size.in_size = 6;//This register is used to configure the size of L2 Tx FIFO for Rx channel. 0:16 bytes, 1:24 bytes, 2:32 bytes, 3: 40 bytes, 4: 48 bytes, 5:56 bytes, 6: 64 bytes, 7: 72 bytes, 8: 80 bytes. + //GDMA.channel[cam->dma_num].in.wight.rx_weight = 7;//The weight of Rx channel 0-15 + return ESP_OK; +} + +esp_err_t ll_cam_config(cam_obj_t *cam, const camera_config_t *config) +{ + if (REG_GET_BIT(SYSTEM_PERIP_CLK_EN1_REG, SYSTEM_LCD_CAM_CLK_EN) == 0) { + REG_CLR_BIT(SYSTEM_PERIP_CLK_EN1_REG, SYSTEM_LCD_CAM_CLK_EN); + REG_SET_BIT(SYSTEM_PERIP_CLK_EN1_REG, SYSTEM_LCD_CAM_CLK_EN); + REG_SET_BIT(SYSTEM_PERIP_RST_EN1_REG, SYSTEM_LCD_CAM_RST); + REG_CLR_BIT(SYSTEM_PERIP_RST_EN1_REG, SYSTEM_LCD_CAM_RST); + } + + LCD_CAM.cam_ctrl.val = 0; + + LCD_CAM.cam_ctrl.cam_clkm_div_b = 0; + LCD_CAM.cam_ctrl.cam_clkm_div_a = 0; + LCD_CAM.cam_ctrl.cam_clkm_div_num = 160000000 / config->xclk_freq_hz; + LCD_CAM.cam_ctrl.cam_clk_sel = 3;//Select Camera module source clock. 0: no clock. 1: APLL. 2: CLK160. 3: no clock. + + LCD_CAM.cam_ctrl.cam_stop_en = 0; + LCD_CAM.cam_ctrl.cam_vsync_filter_thres = 4; // Filter by LCD_CAM clock + LCD_CAM.cam_ctrl.cam_update = 0; + LCD_CAM.cam_ctrl.cam_byte_order = cam->swap_data; + LCD_CAM.cam_ctrl.cam_bit_order = 0; + LCD_CAM.cam_ctrl.cam_line_int_en = 0; + LCD_CAM.cam_ctrl.cam_vs_eof_en = 0; //1: CAM_VSYNC to generate in_suc_eof. 0: in_suc_eof is controlled by reg_cam_rec_data_cyclelen + + LCD_CAM.cam_ctrl1.val = 0; + LCD_CAM.cam_ctrl1.cam_rec_data_bytelen = LCD_CAM_DMA_NODE_BUFFER_MAX_SIZE - 1; // Cannot be assigned to 0, and it is easy to overflow + LCD_CAM.cam_ctrl1.cam_line_int_num = 0; // The number of hsyncs that generate hs interrupts + LCD_CAM.cam_ctrl1.cam_clk_inv = 0; + LCD_CAM.cam_ctrl1.cam_vsync_filter_en = 1; + LCD_CAM.cam_ctrl1.cam_2byte_en = 0; + LCD_CAM.cam_ctrl1.cam_de_inv = 0; + LCD_CAM.cam_ctrl1.cam_hsync_inv = 0; + LCD_CAM.cam_ctrl1.cam_vsync_inv = 0; + LCD_CAM.cam_ctrl1.cam_vh_de_mode_en = 0; + + LCD_CAM.cam_rgb_yuv.val = 0; + + LCD_CAM.cam_ctrl.cam_update = 1; + LCD_CAM.cam_ctrl1.cam_start = 1; + + esp_err_t err = ll_cam_dma_init(cam); + if(err != ESP_OK) { + return err; + } + + return ESP_OK; +} + +void ll_cam_vsync_intr_enable(cam_obj_t *cam, bool en) +{ + LCD_CAM.lc_dma_int_clr.cam_vsync_int_clr = 1; + if (en) { + LCD_CAM.lc_dma_int_ena.cam_vsync_int_ena = 1; + } else { + LCD_CAM.lc_dma_int_ena.cam_vsync_int_ena = 0; + } +} + +esp_err_t ll_cam_set_pin(cam_obj_t *cam, const camera_config_t *config) +{ + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_pclk], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_pclk, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_pclk, GPIO_FLOATING); + gpio_matrix_in(config->pin_pclk, CAM_PCLK_IDX, false); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_vsync], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_vsync, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_vsync, GPIO_FLOATING); + gpio_matrix_in(config->pin_vsync, CAM_V_SYNC_IDX, cam->vsync_invert); + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_href], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_href, GPIO_MODE_INPUT); + gpio_set_pull_mode(config->pin_href, GPIO_FLOATING); + gpio_matrix_in(config->pin_href, CAM_H_ENABLE_IDX, false); + + int data_pins[8] = { + config->pin_d0, config->pin_d1, config->pin_d2, config->pin_d3, config->pin_d4, config->pin_d5, config->pin_d6, config->pin_d7, + }; + for (int i = 0; i < 8; i++) { + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[data_pins[i]], PIN_FUNC_GPIO); + gpio_set_direction(data_pins[i], GPIO_MODE_INPUT); + gpio_set_pull_mode(data_pins[i], GPIO_FLOATING); + gpio_matrix_in(data_pins[i], CAM_DATA_IN0_IDX + i, false); + } + + PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[config->pin_xclk], PIN_FUNC_GPIO); + gpio_set_direction(config->pin_xclk, GPIO_MODE_OUTPUT); + gpio_set_pull_mode(config->pin_xclk, GPIO_FLOATING); + gpio_matrix_out(config->pin_xclk, CAM_CLK_IDX, false, false); + + return ESP_OK; +} + +esp_err_t ll_cam_init_isr(cam_obj_t *cam) +{ + esp_err_t ret = ESP_OK; + ret = esp_intr_alloc_intrstatus(gdma_periph_signals.groups[0].pairs[cam->dma_num].rx_irq_id, + ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_SHARED | ESP_INTR_FLAG_IRAM, + (uint32_t)&GDMA.channel[cam->dma_num].in.int_st, GDMA_IN_SUC_EOF_CH0_INT_ST_M, + ll_cam_dma_isr, cam, &cam->dma_intr_handle); + if (ret != ESP_OK) { + ESP_LOGE(TAG, "DMA interrupt allocation of camera failed"); + return ret; + } + + ret = esp_intr_alloc_intrstatus(ETS_LCD_CAM_INTR_SOURCE, + ESP_INTR_FLAG_LOWMED | ESP_INTR_FLAG_SHARED | ESP_INTR_FLAG_IRAM, + (uint32_t)&LCD_CAM.lc_dma_int_st.val, LCD_CAM_CAM_VSYNC_INT_ST_M, + ll_cam_vsync_isr, cam, &cam->cam_intr_handle); + if (ret != ESP_OK) { + ESP_LOGE(TAG, "LCD_CAM interrupt allocation of camera failed"); + return ret; + } + return ESP_OK; +} + +void ll_cam_do_vsync(cam_obj_t *cam) +{ + gpio_matrix_in(cam->vsync_pin, CAM_V_SYNC_IDX, !cam->vsync_invert); + ets_delay_us(10); + gpio_matrix_in(cam->vsync_pin, CAM_V_SYNC_IDX, cam->vsync_invert); +} + +uint8_t ll_cam_get_dma_align(cam_obj_t *cam) +{ + return 16 << GDMA.channel[cam->dma_num].in.conf1.in_ext_mem_bk_size; +} + +static bool ll_cam_calc_rgb_dma(cam_obj_t *cam){ + size_t node_max = LCD_CAM_DMA_NODE_BUFFER_MAX_SIZE / cam->dma_bytes_per_item; + size_t line_width = cam->width * cam->in_bytes_per_pixel; + size_t node_size = node_max; + size_t nodes_per_line = 1; + size_t lines_per_node = 1; + + // Calculate DMA Node Size so that it's divisable by or divisor of the line width + if(line_width >= node_max){ + // One or more nodes will be requied for one line + for(size_t i = node_max; i > 0; i=i-1){ + if ((line_width % i) == 0) { + node_size = i; + nodes_per_line = line_width / node_size; + break; + } + } + } else { + // One or more lines can fit into one node + for(size_t i = node_max; i > 0; i=i-1){ + if ((i % line_width) == 0) { + node_size = i; + lines_per_node = node_size / line_width; + while((cam->height % lines_per_node) != 0){ + lines_per_node = lines_per_node - 1; + node_size = lines_per_node * line_width; + } + break; + } + } + } + + ESP_LOGI(TAG, "node_size: %4u, nodes_per_line: %u, lines_per_node: %u", + node_size * cam->dma_bytes_per_item, nodes_per_line, lines_per_node); + + cam->dma_node_buffer_size = node_size * cam->dma_bytes_per_item; + + size_t dma_half_buffer_max = CONFIG_CAMERA_DMA_BUFFER_SIZE_MAX / 2 / cam->dma_bytes_per_item; + if (line_width > dma_half_buffer_max) { + ESP_LOGE(TAG, "Resolution too high"); + return 0; + } + + // Calculate minimum EOF size = max(mode_size, line_size) + size_t dma_half_buffer_min = node_size * nodes_per_line; + + // Calculate max EOF size divisable by node size + size_t dma_half_buffer = (dma_half_buffer_max / dma_half_buffer_min) * dma_half_buffer_min; + + // Adjust EOF size so that height will be divisable by the number of lines in each EOF + size_t lines_per_half_buffer = dma_half_buffer / line_width; + while((cam->height % lines_per_half_buffer) != 0){ + dma_half_buffer = dma_half_buffer - dma_half_buffer_min; + lines_per_half_buffer = dma_half_buffer / line_width; + } + + // Calculate DMA size + size_t dma_buffer_max = 2 * dma_half_buffer_max; + if (cam->psram_mode) { + dma_buffer_max = cam->recv_size / cam->dma_bytes_per_item; + } + size_t dma_buffer_size = dma_buffer_max; + if (!cam->psram_mode) { + dma_buffer_size =(dma_buffer_max / dma_half_buffer) * dma_half_buffer; + } + + ESP_LOGI(TAG, "dma_half_buffer_min: %5u, dma_half_buffer: %5u, lines_per_half_buffer: %2u, dma_buffer_size: %5u", + dma_half_buffer_min * cam->dma_bytes_per_item, dma_half_buffer * cam->dma_bytes_per_item, lines_per_half_buffer, dma_buffer_size * cam->dma_bytes_per_item); + + cam->dma_buffer_size = dma_buffer_size * cam->dma_bytes_per_item; + cam->dma_half_buffer_size = dma_half_buffer * cam->dma_bytes_per_item; + cam->dma_half_buffer_cnt = cam->dma_buffer_size / cam->dma_half_buffer_size; + return 1; +} + +bool ll_cam_dma_sizes(cam_obj_t *cam) +{ + cam->dma_bytes_per_item = 1; + if (cam->jpeg_mode) { + if (cam->psram_mode) { + cam->dma_buffer_size = cam->recv_size; + cam->dma_half_buffer_size = 1024; + cam->dma_half_buffer_cnt = cam->dma_buffer_size / cam->dma_half_buffer_size; + cam->dma_node_buffer_size = cam->dma_half_buffer_size; + } else { + cam->dma_half_buffer_cnt = 16; + cam->dma_buffer_size = cam->dma_half_buffer_cnt * 1024; + cam->dma_half_buffer_size = cam->dma_buffer_size / cam->dma_half_buffer_cnt; + cam->dma_node_buffer_size = cam->dma_half_buffer_size; + } + } else { + return ll_cam_calc_rgb_dma(cam); + } + return 1; +} + +size_t IRAM_ATTR ll_cam_memcpy(cam_obj_t *cam, uint8_t *out, const uint8_t *in, size_t len) +{ + // YUV to Grayscale + if (cam->in_bytes_per_pixel == 2 && cam->fb_bytes_per_pixel == 1) { + size_t end = len / 8; + for (size_t i = 0; i < end; ++i) { + out[0] = in[0]; + out[1] = in[2]; + out[2] = in[4]; + out[3] = in[6]; + out += 4; + in += 8; + } + return len / 2; + } + + // just memcpy + memcpy(out, in, len); + return len; +} + +esp_err_t ll_cam_set_sample_mode(cam_obj_t *cam, pixformat_t pix_format, uint32_t xclk_freq_hz, uint16_t sensor_pid) +{ + if (pix_format == PIXFORMAT_GRAYSCALE) { + if (sensor_pid == OV3660_PID || sensor_pid == OV5640_PID || sensor_pid == NT99141_PID) { + cam->in_bytes_per_pixel = 1; // camera sends Y8 + } else { + cam->in_bytes_per_pixel = 2; // camera sends YU/YV + } + cam->fb_bytes_per_pixel = 1; // frame buffer stores Y8 + } else if (pix_format == PIXFORMAT_YUV422 || pix_format == PIXFORMAT_RGB565) { + cam->in_bytes_per_pixel = 2; // camera sends YU/YV + cam->fb_bytes_per_pixel = 2; // frame buffer stores YU/YV/RGB565 + } else if (pix_format == PIXFORMAT_JPEG) { + cam->in_bytes_per_pixel = 1; + cam->fb_bytes_per_pixel = 1; + } else { + ESP_LOGE(TAG, "Requested format is not supported"); + return ESP_ERR_NOT_SUPPORTED; + } + return ESP_OK; +} + +// implements function from xclk.c to allow dynamic XCLK change +esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz) +{ + LCD_CAM.cam_ctrl.cam_clkm_div_b = 0; + LCD_CAM.cam_ctrl.cam_clkm_div_a = 0; + LCD_CAM.cam_ctrl.cam_clkm_div_num = 160000000 / xclk_freq_hz; + LCD_CAM.cam_ctrl.cam_clk_sel = 3;//Select Camera module source clock. 0: no clock. 1: APLL. 2: CLK160. 3: no clock. + LCD_CAM.cam_ctrl.cam_update = 1; + return ESP_OK; +} diff --git a/code/components/esp32-camera-master/target/private_include/ll_cam.h b/code/components/esp32-camera-master/target/private_include/ll_cam.h new file mode 100644 index 00000000..7d30c370 --- /dev/null +++ b/code/components/esp32-camera-master/target/private_include/ll_cam.h @@ -0,0 +1,141 @@ +// Copyright 2010-2020 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include +#include "sdkconfig.h" +#include "esp_idf_version.h" +#if CONFIG_IDF_TARGET_ESP32 +#if ESP_IDF_VERSION_MAJOR >= 4 +#include "esp32/rom/lldesc.h" +#else +#include "rom/lldesc.h" +#endif +#elif CONFIG_IDF_TARGET_ESP32S2 +#include "esp32s2/rom/lldesc.h" +#elif CONFIG_IDF_TARGET_ESP32S3 +#include "esp32s3/rom/lldesc.h" +#endif +#include "esp_log.h" +#include "esp_camera.h" +#include "freertos/FreeRTOS.h" +#include "freertos/queue.h" +#include "freertos/task.h" +#include "freertos/semphr.h" + +#if __has_include("esp_private/periph_ctrl.h") +# include "esp_private/periph_ctrl.h" +#endif + +#define CAMERA_DBG_PIN_ENABLE 0 +#if CAMERA_DBG_PIN_ENABLE + #if CONFIG_IDF_TARGET_ESP32 + #define DBG_PIN_NUM 26 + #else + #define DBG_PIN_NUM 7 + #endif + #include "hal/gpio_ll.h" + #define DBG_PIN_SET(v) gpio_ll_set_level(&GPIO, DBG_PIN_NUM, v) +#else + #define DBG_PIN_SET(v) +#endif + +#define CAM_CHECK(a, str, ret) if (!(a)) { \ + ESP_LOGE(TAG,"%s(%d): %s", __FUNCTION__, __LINE__, str); \ + return (ret); \ + } + +#define CAM_CHECK_GOTO(a, str, lab) if (!(a)) { \ + ESP_LOGE(TAG,"%s(%d): %s", __FUNCTION__, __LINE__, str); \ + goto lab; \ + } + +#define LCD_CAM_DMA_NODE_BUFFER_MAX_SIZE (4092) + +typedef enum { + CAM_IN_SUC_EOF_EVENT = 0, + CAM_VSYNC_EVENT +} cam_event_t; + +typedef enum { + CAM_STATE_IDLE = 0, + CAM_STATE_READ_BUF = 1, +} cam_state_t; + +typedef struct { + camera_fb_t fb; + uint8_t en; + //for RGB/YUV modes + lldesc_t *dma; + size_t fb_offset; +} cam_frame_t; + +typedef struct { + uint32_t dma_bytes_per_item; + uint32_t dma_buffer_size; + uint32_t dma_half_buffer_size; + uint32_t dma_half_buffer_cnt; + uint32_t dma_node_buffer_size; + uint32_t dma_node_cnt; + uint32_t frame_copy_cnt; + + //for JPEG mode + lldesc_t *dma; + uint8_t *dma_buffer; + + cam_frame_t *frames; + + QueueHandle_t event_queue; + QueueHandle_t frame_buffer_queue; + TaskHandle_t task_handle; + intr_handle_t cam_intr_handle; + + uint8_t dma_num;//ESP32-S3 + intr_handle_t dma_intr_handle;//ESP32-S3 + + uint8_t jpeg_mode; + uint8_t vsync_pin; + uint8_t vsync_invert; + uint32_t frame_cnt; + uint32_t recv_size; + bool swap_data; + bool psram_mode; + + //for RGB/YUV modes + uint16_t width; + uint16_t height; + uint8_t in_bytes_per_pixel; + uint8_t fb_bytes_per_pixel; + uint32_t fb_size; + + cam_state_t state; +} cam_obj_t; + + +bool ll_cam_stop(cam_obj_t *cam); +bool ll_cam_start(cam_obj_t *cam, int frame_pos); +esp_err_t ll_cam_config(cam_obj_t *cam, const camera_config_t *config); +esp_err_t ll_cam_deinit(cam_obj_t *cam); +void ll_cam_vsync_intr_enable(cam_obj_t *cam, bool en); +esp_err_t ll_cam_set_pin(cam_obj_t *cam, const camera_config_t *config); +esp_err_t ll_cam_init_isr(cam_obj_t *cam); +void ll_cam_do_vsync(cam_obj_t *cam); +uint8_t ll_cam_get_dma_align(cam_obj_t *cam); +bool ll_cam_dma_sizes(cam_obj_t *cam); +size_t IRAM_ATTR ll_cam_memcpy(cam_obj_t *cam, uint8_t *out, const uint8_t *in, size_t len); +esp_err_t ll_cam_set_sample_mode(cam_obj_t *cam, pixformat_t pix_format, uint32_t xclk_freq_hz, uint16_t sensor_pid); + +// implemented in cam_hal +void ll_cam_send_event(cam_obj_t *cam, cam_event_t cam_event, BaseType_t * HPTaskAwoken); diff --git a/code/components/esp32-camera-master/driver/xclk.c b/code/components/esp32-camera-master/target/xclk.c similarity index 81% rename from code/components/esp32-camera-master/driver/xclk.c rename to code/components/esp32-camera-master/target/xclk.c index f58747d5..b5ea53e7 100644 --- a/code/components/esp32-camera-master/driver/xclk.c +++ b/code/components/esp32-camera-master/target/xclk.c @@ -4,6 +4,7 @@ #include "esp_log.h" #include "esp_system.h" #include "xclk.h" +#include "esp_camera.h" #if defined(ARDUINO_ARCH_ESP32) && defined(CONFIG_ARDUHAL_ESP_LOG) #include "esp32-hal-log.h" @@ -12,12 +13,15 @@ static const char* TAG = "camera_xclk"; #endif +static ledc_channel_t g_ledc_channel = 0; + esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz) { ledc_timer_config_t timer_conf; - timer_conf.duty_resolution = 2; + timer_conf.duty_resolution = LEDC_TIMER_1_BIT; timer_conf.freq_hz = xclk_freq_hz; - timer_conf.speed_mode = LEDC_HIGH_SPEED_MODE; + timer_conf.speed_mode = LEDC_LOW_SPEED_MODE; + #if ESP_IDF_VERSION_MAJOR >= 4 timer_conf.clk_cfg = LEDC_AUTO_CLK; #endif @@ -31,21 +35,20 @@ esp_err_t xclk_timer_conf(int ledc_timer, int xclk_freq_hz) esp_err_t camera_enable_out_clock(camera_config_t* config) { - periph_module_enable(PERIPH_LEDC_MODULE); - esp_err_t err = xclk_timer_conf(config->ledc_timer, config->xclk_freq_hz); if (err != ESP_OK) { ESP_LOGE(TAG, "ledc_timer_config failed, rc=%x", err); return err; } + g_ledc_channel = config->ledc_channel; ledc_channel_config_t ch_conf; ch_conf.gpio_num = config->pin_xclk; - ch_conf.speed_mode = LEDC_HIGH_SPEED_MODE; + ch_conf.speed_mode = LEDC_LOW_SPEED_MODE; ch_conf.channel = config->ledc_channel; ch_conf.intr_type = LEDC_INTR_DISABLE; ch_conf.timer_sel = config->ledc_timer; - ch_conf.duty = 2; + ch_conf.duty = 1; ch_conf.hpoint = 0; err = ledc_channel_config(&ch_conf); if (err != ESP_OK) { @@ -57,5 +60,5 @@ esp_err_t camera_enable_out_clock(camera_config_t* config) void camera_disable_out_clock() { - periph_module_disable(PERIPH_LEDC_MODULE); + ledc_stop(LEDC_LOW_SPEED_MODE, g_ledc_channel, 0); } diff --git a/code/components/esp32-camera-master/test/CMakeLists.txt b/code/components/esp32-camera-master/test/CMakeLists.txt new file mode 100644 index 00000000..a8c3d16b --- /dev/null +++ b/code/components/esp32-camera-master/test/CMakeLists.txt @@ -0,0 +1,4 @@ +idf_component_register(SRC_DIRS . + PRIV_INCLUDE_DIRS . + PRIV_REQUIRES test_utils esp32-camera nvs_flash + EMBED_TXTFILES pictures/testimg.jpeg pictures/test_outside.jpeg pictures/test_inside.jpeg) diff --git a/code/components/esp32-camera-master/test/component.mk b/code/components/esp32-camera-master/test/component.mk new file mode 100644 index 00000000..5fb88365 --- /dev/null +++ b/code/components/esp32-camera-master/test/component.mk @@ -0,0 +1,8 @@ +# +#Component Makefile +# + +COMPONENT_SRCDIRS += ./ +COMPONENT_PRIV_INCLUDEDIRS += ./ + +COMPONENT_ADD_LDFLAGS = -Wl,--whole-archive -l$(COMPONENT_NAME) -Wl,--no-whole-archive diff --git a/code/components/esp32-camera-master/test/pictures/test_inside.jpeg b/code/components/esp32-camera-master/test/pictures/test_inside.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..92e7bc3694e8568be514673432c3601a8c1c4126 GIT binary patch literal 18832 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 F|Jg`@ubTh> literal 0 HcmV?d00001 diff --git a/code/components/esp32-camera-master/test/pictures/test_outside.jpeg b/code/components/esp32-camera-master/test/pictures/test_outside.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..dcb4bf1b3c82c9aa3858223414be90a54a1ff4c6 GIT binary patch literal 81744 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 +#include +#include "freertos/FreeRTOS.h" +#include "freertos/task.h" +#include "unity.h" +#include +#include "esp_log.h" + +#include "esp_camera.h" + +#ifdef CONFIG_IDF_TARGET_ESP32 +#define BOARD_WROVER_KIT 1 +#elif defined CONFIG_IDF_TARGET_ESP32S2 +#define BOARD_CAMERA_MODEL_ESP32S2 1 +#elif defined CONFIG_IDF_TARGET_ESP32S3 +#define BOARD_CAMERA_MODEL_ESP32_S3_EYE 1 +#endif + +// WROVER-KIT PIN Map +#if BOARD_WROVER_KIT + +#define PWDN_GPIO_NUM -1 //power down is not used +#define RESET_GPIO_NUM -1 //software reset will be performed +#define XCLK_GPIO_NUM 21 +#define SIOD_GPIO_NUM 26 +#define SIOC_GPIO_NUM 27 + +#define Y9_GPIO_NUM 35 +#define Y8_GPIO_NUM 34 +#define Y7_GPIO_NUM 39 +#define Y6_GPIO_NUM 36 +#define Y5_GPIO_NUM 19 +#define Y4_GPIO_NUM 18 +#define Y3_GPIO_NUM 5 +#define Y2_GPIO_NUM 4 +#define VSYNC_GPIO_NUM 25 +#define HREF_GPIO_NUM 23 +#define PCLK_GPIO_NUM 22 + +// ESP32Cam (AiThinker) PIN Map +#elif BOARD_ESP32CAM_AITHINKER + +#define PWDN_GPIO_NUM 32 +#define RESET_GPIO_NUM -1 //software reset will be performed +#define XCLK_GPIO_NUM 0 +#define SIOD_GPIO_NUM 26 +#define SIOC_GPIO_NUM 27 + +#define Y9_GPIO_NUM 35 +#define Y8_GPIO_NUM 34 +#define Y7_GPIO_NUM 39 +#define Y6_GPIO_NUM 36 +#define Y5_GPIO_NUM 21 +#define Y4_GPIO_NUM 19 +#define Y3_GPIO_NUM 18 +#define Y2_GPIO_NUM 5 +#define VSYNC_GPIO_NUM 25 +#define HREF_GPIO_NUM 23 +#define PCLK_GPIO_NUM 22 + +#elif BOARD_CAMERA_MODEL_ESP32S2 + +#define PWDN_GPIO_NUM -1 +#define RESET_GPIO_NUM -1 + +#define VSYNC_GPIO_NUM 21 +#define HREF_GPIO_NUM 38 +#define PCLK_GPIO_NUM 11 +#define XCLK_GPIO_NUM 40 + +#define SIOD_GPIO_NUM 17 +#define SIOC_GPIO_NUM 18 + +#define Y9_GPIO_NUM 39 +#define Y8_GPIO_NUM 41 +#define Y7_GPIO_NUM 42 +#define Y6_GPIO_NUM 12 +#define Y5_GPIO_NUM 3 +#define Y4_GPIO_NUM 14 +#define Y3_GPIO_NUM 37 +#define Y2_GPIO_NUM 13 + +#elif BOARD_CAMERA_MODEL_ESP32_S3_EYE + +#define PWDN_GPIO_NUM 43 +#define RESET_GPIO_NUM 44 + +#define VSYNC_GPIO_NUM 6 +#define HREF_GPIO_NUM 7 +#define PCLK_GPIO_NUM 13 +#define XCLK_GPIO_NUM 15 + +#define SIOD_GPIO_NUM 4 +#define SIOC_GPIO_NUM 5 + +#define Y9_GPIO_NUM 16 +#define Y8_GPIO_NUM 17 +#define Y7_GPIO_NUM 18 +#define Y6_GPIO_NUM 12 +#define Y5_GPIO_NUM 11 +#define Y4_GPIO_NUM 10 +#define Y3_GPIO_NUM 9 +#define Y2_GPIO_NUM 8 + +#endif + +static const char *TAG = "test camera"; + +typedef void (*decode_func_t)(uint8_t *jpegbuffer, uint32_t size, uint8_t *outbuffer); + +static esp_err_t init_camera(uint32_t xclk_freq_hz, pixformat_t pixel_format, framesize_t frame_size, uint8_t fb_count) +{ + framesize_t size_bak = frame_size; + if (PIXFORMAT_JPEG == pixel_format && FRAMESIZE_SVGA > frame_size) { + frame_size = FRAMESIZE_HD; + } + camera_config_t camera_config = { + .pin_pwdn = PWDN_GPIO_NUM, + .pin_reset = RESET_GPIO_NUM, + .pin_xclk = XCLK_GPIO_NUM, + .pin_sscb_sda = SIOD_GPIO_NUM, + .pin_sscb_scl = SIOC_GPIO_NUM, + + .pin_d7 = Y9_GPIO_NUM, + .pin_d6 = Y8_GPIO_NUM, + .pin_d5 = Y7_GPIO_NUM, + .pin_d4 = Y6_GPIO_NUM, + .pin_d3 = Y5_GPIO_NUM, + .pin_d2 = Y4_GPIO_NUM, + .pin_d1 = Y3_GPIO_NUM, + .pin_d0 = Y2_GPIO_NUM, + .pin_vsync = VSYNC_GPIO_NUM, + .pin_href = HREF_GPIO_NUM, + .pin_pclk = PCLK_GPIO_NUM, + + //EXPERIMENTAL: Set to 16MHz on ESP32-S2 or ESP32-S3 to enable EDMA mode + .xclk_freq_hz = xclk_freq_hz, + .ledc_timer = LEDC_TIMER_0, + .ledc_channel = LEDC_CHANNEL_0, + + .pixel_format = pixel_format, //YUV422,GRAYSCALE,RGB565,JPEG + .frame_size = frame_size, //QQVGA-UXGA Do not use sizes above QVGA when not JPEG + + .jpeg_quality = 12, //0-63 lower number means higher quality + .fb_count = fb_count, //if more than one, i2s runs in continuous mode. Use only with JPEG + .grab_mode = CAMERA_GRAB_WHEN_EMPTY + }; + + //initialize the camera + esp_err_t ret = esp_camera_init(&camera_config); + + if (ESP_OK == ret && PIXFORMAT_JPEG == pixel_format && FRAMESIZE_SVGA > size_bak) { + sensor_t *s = esp_camera_sensor_get(); + s->set_framesize(s, size_bak); + } + + return ret; +} + +static bool camera_test_fps(uint16_t times, float *fps, uint32_t *size) +{ + *fps = 0.0f; + *size = 0; + uint32_t s = 0; + uint32_t num = 0; + uint64_t total_time = esp_timer_get_time(); + for (size_t i = 0; i < times; i++) { + camera_fb_t *pic = esp_camera_fb_get(); + if (NULL == pic) { + ESP_LOGW(TAG, "fb get failed"); + return 0; + } else { + s += pic->len; + num++; + } + esp_camera_fb_return(pic); + } + total_time = esp_timer_get_time() - total_time; + if (num) { + *fps = num * 1000000.0f / total_time ; + *size = s / num; + } + return 1; +} + +static const char *get_cam_format_name(pixformat_t pixel_format) +{ + switch (pixel_format) { + case PIXFORMAT_JPEG: return "JPEG"; + case PIXFORMAT_RGB565: return "RGB565"; + case PIXFORMAT_RGB888: return "RGB888"; + case PIXFORMAT_YUV422: return "YUV422"; + default: + break; + } + return "UNKNOW"; +} + +static void printf_img_base64(const camera_fb_t *pic) +{ + uint8_t *outbuffer = NULL; + size_t outsize = 0; + if (PIXFORMAT_JPEG != pic->format) { + fmt2jpg(pic->buf, pic->width * pic->height * 2, pic->width, pic->height, pic->format, 50, &outbuffer, &outsize); + } else { + outbuffer = pic->buf; + outsize = pic->len; + } + + uint8_t *base64_buf = calloc(1, outsize * 4); + if (NULL != base64_buf) { + size_t out_len = 0; + mbedtls_base64_encode(base64_buf, outsize * 4, &out_len, outbuffer, outsize); + printf("%s\n", base64_buf); + free(base64_buf); + if (PIXFORMAT_JPEG != pic->format) { + free(outbuffer); + } + } else { + ESP_LOGE(TAG, "malloc for base64 buffer failed"); + } +} + +static void camera_performance_test(uint32_t xclk_freq, uint32_t pic_num) +{ + esp_err_t ret = ESP_OK; + //detect sensor information + TEST_ESP_OK(init_camera(20000000, PIXFORMAT_RGB565, FRAMESIZE_QVGA, 2)); + sensor_t *s = esp_camera_sensor_get(); + camera_sensor_info_t *info = esp_camera_sensor_get_info(&s->id); + TEST_ASSERT_NOT_NULL(info); + TEST_ESP_OK(esp_camera_deinit()); + vTaskDelay(500 / portTICK_RATE_MS); + framesize_t max_size = info->max_size; + pixformat_t all_format[] = {PIXFORMAT_JPEG, PIXFORMAT_RGB565, PIXFORMAT_YUV422, }; + pixformat_t *format_s = &all_format[0]; + pixformat_t *format_e = &all_format[2]; + if (false == info->support_jpeg) { + format_s++; // skip jpeg + } + + struct fps_result { + float fps[FRAMESIZE_INVALID]; + uint32_t size[FRAMESIZE_INVALID]; + }; + struct fps_result results[3] = {0}; + + for (; format_s <= format_e; format_s++) { + for (size_t i = 0; i <= max_size; i++) { + ESP_LOGI(TAG, "\n\n===> Testing format:%s resolution: %d x %d <===", get_cam_format_name(*format_s), resolution[i].width, resolution[i].height); + ret = init_camera(xclk_freq, *format_s, i, 2); + vTaskDelay(100 / portTICK_RATE_MS); + if (ESP_OK != ret) { + ESP_LOGW(TAG, "Testing init failed :-(, skip this item"); + vTaskDelay(500 / portTICK_RATE_MS); + continue; + } + camera_test_fps(pic_num, &results[format_s - all_format].fps[i], &results[format_s - all_format].size[i]); + TEST_ESP_OK(esp_camera_deinit()); + } + } + + printf("FPS Result\n"); + printf("resolution , JPEG fps, JPEG size, RGB565 fps, RGB565 size, YUV422 fps, YUV422 size \n"); + for (size_t i = 0; i <= max_size; i++) { + printf("%4d x %4d , %5.2f, %6d, %5.2f, %7d, %5.2f, %7d \n", + resolution[i].width, resolution[i].height, + results[0].fps[i], results[0].size[i], + results[1].fps[i], results[1].size[i], + results[2].fps[i], results[2].size[i]); + } + printf("----------------------------------------------------------------------------------------\n"); +} + +TEST_CASE("Camera driver init, deinit test", "[camera]") +{ + uint64_t t1 = esp_timer_get_time(); + TEST_ESP_OK(init_camera(20000000, PIXFORMAT_RGB565, FRAMESIZE_QVGA, 2)); + uint64_t t2 = esp_timer_get_time(); + ESP_LOGI(TAG, "Camera init time %llu ms", (t2 - t1) / 1000); + + TEST_ESP_OK(esp_camera_deinit()); +} + +TEST_CASE("Camera driver take RGB565 picture test", "[camera]") +{ + TEST_ESP_OK(init_camera(10000000, PIXFORMAT_RGB565, FRAMESIZE_QVGA, 2)); + vTaskDelay(500 / portTICK_RATE_MS); + ESP_LOGI(TAG, "Taking picture..."); + camera_fb_t *pic = esp_camera_fb_get(); + if (pic) { + ESP_LOGI(TAG, "picture: %d x %d, size: %u", pic->width, pic->height, pic->len); + printf_img_base64(pic); + esp_camera_fb_return(pic); + } + + TEST_ESP_OK(esp_camera_deinit()); + TEST_ASSERT_NOT_NULL(pic); +} + +TEST_CASE("Camera driver take YUV422 picture test", "[camera]") +{ + TEST_ESP_OK(init_camera(10000000, PIXFORMAT_YUV422, FRAMESIZE_QVGA, 2)); + vTaskDelay(500 / portTICK_RATE_MS); + ESP_LOGI(TAG, "Taking picture..."); + camera_fb_t *pic = esp_camera_fb_get(); + if (pic) { + ESP_LOGI(TAG, "picture: %d x %d, size: %u", pic->width, pic->height, pic->len); + printf_img_base64(pic); + esp_camera_fb_return(pic); + } + + TEST_ESP_OK(esp_camera_deinit()); + TEST_ASSERT_NOT_NULL(pic); +} + +TEST_CASE("Camera driver take JPEG picture test", "[camera]") +{ + TEST_ESP_OK(init_camera(20000000, PIXFORMAT_JPEG, FRAMESIZE_QVGA, 2)); + vTaskDelay(500 / portTICK_RATE_MS); + ESP_LOGI(TAG, "Taking picture..."); + camera_fb_t *pic = esp_camera_fb_get(); + if (pic) { + ESP_LOGI(TAG, "picture: %d x %d, size: %u", pic->width, pic->height, pic->len); + printf_img_base64(pic); + esp_camera_fb_return(pic); + } + + TEST_ESP_OK(esp_camera_deinit()); + TEST_ASSERT_NOT_NULL(pic); +} + +TEST_CASE("Camera driver performance test", "[camera]") +{ + camera_performance_test(20 * 1000000, 16); +} + + +static void print_rgb565_img(uint8_t *img, int width, int height) +{ + uint16_t *p = (uint16_t *)img; + const char temp2char[17] = "@MNHQ&#UJ*x7^i;."; + for (size_t j = 0; j < height; j++) { + for (size_t i = 0; i < width; i++) { + uint32_t c = p[j * width + i]; + uint8_t r = c >> 11; + uint8_t g = (c >> 6) & 0x1f; + uint8_t b = c & 0x1f; + c = (r + g + b) / 3; + c >>= 1; + printf("%c", temp2char[15 - c]); + } + printf("\n"); + } +} + +static void print_rgb888_img(uint8_t *img, int width, int height) +{ + uint8_t *p = (uint8_t *)img; + const char temp2char[17] = "@MNHQ&#UJ*x7^i;."; + for (size_t j = 0; j < height; j++) { + for (size_t i = 0; i < width; i++) { + uint8_t *c = p + 3 * (j * width + i); + uint8_t r = *c++; + uint8_t g = *c++; + uint8_t b = *c; + uint32_t v = (r + g + b) / 3; + v >>= 4; + printf("%c", temp2char[15 - v]); + } + printf("\n"); + } +} + +static void tjpgd_decode_rgb565(uint8_t *mjpegbuffer, uint32_t size, uint8_t *outbuffer) +{ + jpg2rgb565(mjpegbuffer, size, outbuffer, JPG_SCALE_NONE); +} + +static void tjpgd_decode_rgb888(uint8_t *mjpegbuffer, uint32_t size, uint8_t *outbuffer) +{ + fmt2rgb888(mjpegbuffer, size, PIXFORMAT_JPEG, outbuffer); +} + +typedef enum { + DECODE_RGB565, + DECODE_RGB888, +} decode_type_t; + +static const decode_func_t g_decode_func[2][2] = { + {tjpgd_decode_rgb565,}, + {tjpgd_decode_rgb888,}, +}; + + +static float jpg_decode_test(uint8_t decoder_index, decode_type_t type, const uint8_t *jpg, uint32_t length, uint32_t img_w, uint32_t img_h, uint32_t times) +{ + uint8_t *jpg_buf = malloc(length); + if (NULL == jpg_buf) { + ESP_LOGE(TAG, "malloc for jpg buffer failed"); + return 0; + } + memcpy(jpg_buf, jpg, length); + + uint8_t *rgb_buf = heap_caps_malloc(img_w * img_h * 3, MALLOC_CAP_SPIRAM | MALLOC_CAP_8BIT); + if (NULL == rgb_buf) { + free(jpg_buf); + ESP_LOGE(TAG, "malloc for rgb buffer failed"); + return 0; + } + decode_func_t decode = g_decode_func[type][decoder_index]; + decode(jpg_buf, length, rgb_buf); + if (DECODE_RGB565 == type) { + ESP_LOGI(TAG, "jpeg decode to rgb565"); + print_rgb565_img(rgb_buf, img_w, img_h); + } else { + ESP_LOGI(TAG, "jpeg decode to rgb888"); + print_rgb888_img(rgb_buf, img_w, img_h); + } + + uint64_t t_decode[times]; + for (size_t i = 0; i < times; i++) { + uint64_t t1 = esp_timer_get_time(); + decode(jpg_buf, length, rgb_buf); + t_decode[i] = esp_timer_get_time() - t1; + } + + printf("resolution , t \n"); + uint64_t t_total = 0; + for (size_t i = 0; i < times; i++) { + t_total += t_decode[i]; + float t = t_decode[i] / 1000.0f; + printf("%4d x %4d , %5.2f ms \n", img_w, img_h, t); + } + + float fps = times / (t_total / 1000000.0f); + printf("Decode FPS Result\n"); + printf("resolution , fps \n"); + printf("%4d x %4d , %5.2f \n", img_w, img_h, fps); + + free(jpg_buf); + heap_caps_free(rgb_buf); + return fps; +} + +static void img_jpeg_decode_test(uint16_t pic_index, uint16_t lib_index) +{ + extern const uint8_t img1_start[] asm("_binary_testimg_jpeg_start"); + extern const uint8_t img1_end[] asm("_binary_testimg_jpeg_end"); + extern const uint8_t img2_start[] asm("_binary_test_inside_jpeg_start"); + extern const uint8_t img2_end[] asm("_binary_test_inside_jpeg_end"); + extern const uint8_t img3_start[] asm("_binary_test_outside_jpeg_start"); + extern const uint8_t img3_end[] asm("_binary_test_outside_jpeg_end"); + + struct img_t { + const uint8_t *buf; + uint32_t length; + uint16_t w, h; + }; + struct img_t imgs[3] = { + { + .buf = img1_start, + .length = img1_end - img1_start, + .w = 227, + .h = 149, + }, + { + .buf = img2_start, + .length = img2_end - img2_start, + .w = 320, + .h = 240, + }, + { + .buf = img3_start, + .length = img3_end - img3_start, + .w = 480, + .h = 320, + }, + }; + + ESP_LOGI(TAG, "pic_index:%d", pic_index); + ESP_LOGI(TAG, "lib_index:%d", lib_index); + jpg_decode_test(lib_index, DECODE_RGB565, imgs[pic_index].buf, imgs[pic_index].length, imgs[pic_index].w, imgs[pic_index].h, 16); +} + +TEST_CASE("Conversions image 227x149 jpeg decode test", "[camera]") +{ + img_jpeg_decode_test(0, 0); +} + +TEST_CASE("Conversions image 320x240 jpeg decode test", "[camera]") +{ + img_jpeg_decode_test(1, 0); +} + +TEST_CASE("Conversions image 480x320 jpeg decode test", "[camera]") +{ + img_jpeg_decode_test(2, 0); +} diff --git a/code/components/jomjol_controlcamera/ClassControllCamera.cpp b/code/components/jomjol_controlcamera/ClassControllCamera.cpp index 98b95b49..d692a9dc 100644 --- a/code/components/jomjol_controlcamera/ClassControllCamera.cpp +++ b/code/components/jomjol_controlcamera/ClassControllCamera.cpp @@ -73,21 +73,19 @@ static camera_config_t camera_config = { .pin_pclk = CAM_PIN_PCLK, //XCLK 20MHz or 10MHz for OV2640 double FPS (Experimental) -// .xclk_freq_hz = 20000000, // Orginalwert - .xclk_freq_hz = 5000000, // Test, um die Bildfehler los zu werden !!!! + .xclk_freq_hz = 20000000, // Orginalwert +// .xclk_freq_hz = 5000000, // Test, um die Bildfehler los zu werden !!!! .ledc_timer = LEDC_TIMER_0, .ledc_channel = LEDC_CHANNEL_0, .pixel_format = PIXFORMAT_JPEG, //YUV422,GRAYSCALE,RGB565,JPEG .frame_size = FRAMESIZE_VGA, //QQVGA-UXGA Do not use sizes above QVGA when not JPEG // .frame_size = FRAMESIZE_UXGA, //QQVGA-UXGA Do not use sizes above QVGA when not JPEG - - - .jpeg_quality = 5, //0-63 lower number means higher quality - .fb_count = 1 //if more than one, i2s runs in continuous mode. Use only with JPEG + .fb_count = 1, //if more than one, i2s runs in continuous mode. Use only with JPEG // .grab_mode = CAMERA_GRAB_WHEN_EMPTY, - + .grab_mode = CAMERA_GRAB_LATEST, + }; @@ -231,6 +229,8 @@ void CCamera::EnableAutoExposure(int flashdauer) vTaskDelay( xDelay ); camera_fb_t * fb = esp_camera_fb_get(); + esp_camera_fb_return(fb); + fb = esp_camera_fb_get(); if (!fb) { ESP_LOGE(TAGCAMERACLASS, "Camera Capture Failed"); LEDOnOff(false); @@ -277,6 +277,8 @@ esp_err_t CCamera::CaptureToBasisImage(CImageBasis *_Image, int delay) #endif camera_fb_t * fb = esp_camera_fb_get(); + esp_camera_fb_return(fb); + fb = esp_camera_fb_get(); if (!fb) { ESP_LOGE(TAGCAMERACLASS, "CaptureToBasisImage: Camera Capture Failed"); LEDOnOff(false); @@ -285,7 +287,7 @@ esp_err_t CCamera::CaptureToBasisImage(CImageBasis *_Image, int delay) LogFile.SwitchOnOff(true); LogFile.WriteToFile("Camera is not working anymore - most propably hardware problem (instablility, ...). " "System will reboot."); - doReboot(); + doReboot(); return ESP_FAIL; } @@ -374,6 +376,8 @@ esp_err_t CCamera::CaptureToFile(std::string nm, int delay) } camera_fb_t * fb = esp_camera_fb_get(); + esp_camera_fb_return(fb); + fb = esp_camera_fb_get(); if (!fb) { ESP_LOGE(TAGCAMERACLASS, "CaptureToFile: Camera Capture Failed"); LEDOnOff(false); @@ -465,6 +469,8 @@ esp_err_t CCamera::CaptureToHTTP(httpd_req_t *req, int delay) } + fb = esp_camera_fb_get(); + esp_camera_fb_return(fb); fb = esp_camera_fb_get(); if (!fb) { ESP_LOGE(TAGCAMERACLASS, "Camera capture failed"); diff --git a/code/components/jomjol_controlcamera/sensor.h b/code/components/jomjol_controlcamera/sensor_old.h similarity index 100% rename from code/components/jomjol_controlcamera/sensor.h rename to code/components/jomjol_controlcamera/sensor_old.h diff --git a/code/components/jomjol_mqtt/interface_mqtt.cpp b/code/components/jomjol_mqtt/interface_mqtt.cpp index 3230cb8f..3dcd1cc6 100644 --- a/code/components/jomjol_mqtt/interface_mqtt.cpp +++ b/code/components/jomjol_mqtt/interface_mqtt.cpp @@ -111,10 +111,20 @@ void MQTTInit(std::string _mqttURI, std::string _clientid, std::string _user, st }; client = esp_mqtt_client_init(&mqtt_cfg); - esp_mqtt_client_register_event(client, esp_mmqtt_ID, mqtt_event_handler, client); - esp_mqtt_client_start(client); + if (client) + { + if (esp_mqtt_client_register_event(client, esp_mmqtt_ID, mqtt_event_handler, client) != ESP_OK) + LogFile.WriteToFile("MQTT - Could not register event!"); + if (esp_mqtt_client_start(client) != ESP_OK) + LogFile.WriteToFile("MQTT - Could not start client!"); + + MQTTPublish(_LWTContext, "", 1); + } + else + { + LogFile.WriteToFile("MQTT - Could not Init MQTT Client!"); + } - MQTTPublish(_LWTContext, "", 1); } void MQTTdestroy() { diff --git a/code/components/jomjol_tfliteclass/server_tflite.cpp b/code/components/jomjol_tfliteclass/server_tflite.cpp index 5f548eb6..5a088109 100644 --- a/code/components/jomjol_tfliteclass/server_tflite.cpp +++ b/code/components/jomjol_tfliteclass/server_tflite.cpp @@ -701,7 +701,7 @@ void TFliteDoAutoStart() printf("task_autodoFlow configMINIMAL_STACK_SIZE: %d\n", _i); printf("getESPHeapInfo: %s\n", getESPHeapInfo().c_str()); - xReturned = xTaskCreate(&task_autodoFlow, "task_autodoFlow", configMINIMAL_STACK_SIZE * 60, NULL, tskIDLE_PRIORITY+1, &xHandletask_autodoFlow); + xReturned = xTaskCreate(&task_autodoFlow, "task_autodoFlow", configMINIMAL_STACK_SIZE * 48, NULL, tskIDLE_PRIORITY+1, &xHandletask_autodoFlow); if( xReturned != pdPASS ) { diff --git a/code/components/jomjol_wlan/connect_wlan.cpp b/code/components/jomjol_wlan/connect_wlan.cpp index 15c0090b..310a0a26 100644 --- a/code/components/jomjol_wlan/connect_wlan.cpp +++ b/code/components/jomjol_wlan/connect_wlan.cpp @@ -107,7 +107,31 @@ void LEDBlinkTask(int _dauer, int _anz, bool _off) } ///////////////////////////////////////////////////////// +static void event_handler(void* arg, esp_event_base_t event_base, + int32_t event_id, void* event_data) +{ + if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_START) { + LEDBlinkTask(200, 1, true); + esp_wifi_connect(); + } else if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_DISCONNECTED) { +// if (s_retry_num < EXAMPLE_ESP_MAXIMUM_RETRY) { + esp_wifi_connect(); + s_retry_num++; + ESP_LOGI(TAG, "retry to connect to the AP"); +// } else { +// xEventGroupSetBits(s_wifi_event_group, WIFI_FAIL_BIT); +// } + ESP_LOGI(TAG,"connect to the AP fail"); + } else if (event_base == IP_EVENT && event_id == IP_EVENT_STA_GOT_IP) { + ip_event_got_ip_t* event = (ip_event_got_ip_t*) event_data; + ESP_LOGI(TAG, "got ip:" IPSTR, IP2STR(&event->ip_info.ip)); + s_retry_num = 0; + xEventGroupSetBits(s_wifi_event_group, WIFI_CONNECTED_BIT); + LEDBlinkTask(1000, 5, true); + } +} +/* static void event_handler(void* arg, esp_event_base_t event_base, int32_t event_id, void* event_data) { @@ -129,6 +153,7 @@ static void event_handler(void* arg, esp_event_base_t event_base, LEDBlinkTask(1000, 5, true); } } +*/ void strinttoip4(const char *ip, int &a, int &b, int &c, int &d) { std::string zw = std::string(ip); @@ -140,6 +165,94 @@ void strinttoip4(const char *ip, int &a, int &b, int &c, int &d) { void wifi_init_sta(const char *_ssid, const char *_password, const char *_hostname, const char *_ipadr, const char *_gw, const char *_netmask, const char *_dns) { + s_wifi_event_group = xEventGroupCreate(); + + ESP_ERROR_CHECK(esp_netif_init()); + + ESP_ERROR_CHECK(esp_event_loop_create_default()); + esp_netif_t *my_sta = esp_netif_create_default_wifi_sta(); + + if ((_ipadr != NULL) && (_gw != NULL) && (_netmask != NULL)) + { + ESP_LOGI(TAG, "set IP %s, GW %s, Netmask %s manual", _ipadr, _gw, _netmask); + esp_netif_dhcpc_stop(my_sta); + esp_netif_ip_info_t ip_info; + int a, b, c, d; + strinttoip4(_ipadr, a, b, c, d); + IP4_ADDR(&ip_info.ip, a, b, c, d); + strinttoip4(_gw, a, b, c, d); + IP4_ADDR(&ip_info.gw, a, b, c, d); + strinttoip4(_netmask, a, b, c, d); + IP4_ADDR(&ip_info.netmask, a, b, c, d); + + esp_netif_set_ip_info(my_sta, &ip_info); + } + + wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); + ESP_ERROR_CHECK(esp_wifi_init(&cfg)); + + esp_event_handler_instance_t instance_any_id; + esp_event_handler_instance_t instance_got_ip; + ESP_ERROR_CHECK(esp_event_handler_instance_register(WIFI_EVENT, + ESP_EVENT_ANY_ID, + &event_handler, + NULL, + &instance_any_id)); + ESP_ERROR_CHECK(esp_event_handler_instance_register(IP_EVENT, + IP_EVENT_STA_GOT_IP, + &event_handler, + NULL, + &instance_got_ip)); + wifi_config_t wifi_config = { }; + + strcpy((char*)wifi_config.sta.ssid, (const char*)_ssid); + strcpy((char*)wifi_config.sta.password, (const char*)_password); + + ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA) ); + ESP_ERROR_CHECK(esp_wifi_set_config(WIFI_IF_STA, &wifi_config) ); + ESP_ERROR_CHECK(esp_wifi_start() ); + + if (_hostname != NULL) + { + esp_err_t ret = tcpip_adapter_set_hostname(TCPIP_ADAPTER_IF_STA , _hostname); + hostname = std::string(_hostname); + if(ret != ESP_OK ){ + ESP_LOGE(TAG,"failed to set hostname:%d",ret); + } + else { + ESP_LOGE(TAG,"Set Hostname to:%s", _hostname); + } + + } + + ESP_LOGI(TAG, "wifi_init_sta finished."); + + /* Waiting until either the connection is established (WIFI_CONNECTED_BIT) or connection failed for the maximum + * number of re-tries (WIFI_FAIL_BIT). The bits are set by event_handler() (see above) */ + EventBits_t bits = xEventGroupWaitBits(s_wifi_event_group, + WIFI_CONNECTED_BIT | WIFI_FAIL_BIT, + pdFALSE, + pdFALSE, + portMAX_DELAY); + + /* xEventGroupWaitBits() returns the bits before the call returned, hence we can test which event actually + * happened. */ + if (bits & WIFI_CONNECTED_BIT) { + ESP_LOGI(TAG, "connected to ap SSID:%s password:%s", + _ssid, _password); + } else if (bits & WIFI_FAIL_BIT) { + ESP_LOGI(TAG, "Failed to connect to SSID:%s, password:%s", + _ssid, _password); + } else { + ESP_LOGE(TAG, "UNEXPECTED EVENT"); + } + + /* The event will not be processed after unregister */ +// ESP_ERROR_CHECK(esp_event_handler_instance_unregister(IP_EVENT, IP_EVENT_STA_GOT_IP, instance_got_ip)); +// ESP_ERROR_CHECK(esp_event_handler_instance_unregister(WIFI_EVENT, ESP_EVENT_ANY_ID, instance_any_id)); +// vEventGroupDelete(s_wifi_event_group); + +/* ssid = std::string(_ssid); s_wifi_event_group = xEventGroupCreate(); @@ -208,16 +321,16 @@ void wifi_init_sta(const char *_ssid, const char *_password, const char *_hostna ESP_LOGI(TAG, "wifi_init_sta finished."); - /* Waiting until either the connection is established (WIFI_CONNECTED_BIT) or connection failed for the maximum - * number of re-tries (WIFI_FAIL_BIT). The bits are set by event_handler() (see above) */ + // Waiting until either the connection is established (WIFI_CONNECTED_BIT) or connection failed for the maximum + // number of re-tries (WIFI_FAIL_BIT). The bits are set by event_handler() (see above) EventBits_t bits = xEventGroupWaitBits(s_wifi_event_group, WIFI_CONNECTED_BIT | WIFI_FAIL_BIT, pdFALSE, pdFALSE, portMAX_DELAY); - /* xEventGroupWaitBits() returns the bits before the call returned, hence we can test which event actually - * happened. */ + // xEventGroupWaitBits() returns the bits before the call returned, hence we can test which event actually + // happened. if (bits & WIFI_CONNECTED_BIT) { ESP_LOGI(TAG, "connected to ap SSID:%s password:%s", _ssid, _password); @@ -227,6 +340,7 @@ void wifi_init_sta(const char *_ssid, const char *_password, const char *_hostna } else { ESP_LOGE(TAG, "UNEXPECTED EVENT"); } +*/ } diff --git a/code/main/version.cpp b/code/main/version.cpp index a1a3864a..4f2b1e66 100644 --- a/code/main/version.cpp +++ b/code/main/version.cpp @@ -1,4 +1,4 @@ -const char* GIT_REV="24b4615"; -const char* GIT_TAG=""; -const char* GIT_BRANCH="master"; -const char* BUILD_TIME="2022-01-09 09:44"; \ No newline at end of file +const char* GIT_REV="2daf6c8"; +const char* GIT_TAG="v10.1.0"; +const char* GIT_BRANCH="wifi-mod"; +const char* BUILD_TIME="2022-01-14 20:11"; \ No newline at end of file diff --git a/code/main/version.h b/code/main/version.h index 5411f815..f9fae1a6 100644 --- a/code/main/version.h +++ b/code/main/version.h @@ -13,7 +13,7 @@ extern "C" #include "Helper.h" #include -const char* GIT_BASE_BRANCH = "master - v10.1.0 - 2022-01-09"; +const char* GIT_BASE_BRANCH = "master - v10.2.0 - 2022-01-14"; const char* git_base_branch(void) diff --git a/code/sdkconfig b/code/sdkconfig index 6ad1a07f..ba188dc4 100644 --- a/code/sdkconfig +++ b/code/sdkconfig @@ -1221,11 +1221,17 @@ CONFIG_NT99141_SUPPORT=y CONFIG_OV2640_SUPPORT=y CONFIG_OV3660_SUPPORT=y CONFIG_OV5640_SUPPORT=y +CONFIG_GC2145_SUPPORT=y +CONFIG_GC032A_SUPPORT=y +CONFIG_GC0308_SUPPORT=y # CONFIG_SCCB_HARDWARE_I2C_PORT0 is not set CONFIG_SCCB_HARDWARE_I2C_PORT1=y +# CONFIG_GC_SENSOR_WINDOWING_MODE is not set +CONFIG_GC_SENSOR_SUBSAMPLE_MODE=y CONFIG_CAMERA_CORE0=y # CONFIG_CAMERA_CORE1 is not set # CONFIG_CAMERA_NO_AFFINITY is not set +CONFIG_CAMERA_DMA_BUFFER_SIZE_MAX=32768 # end of Camera configuration # end of Component config diff --git a/code/sdkconfig.esp32cam b/code/sdkconfig.esp32cam index 2e14d848..e9b10a43 100644 --- a/code/sdkconfig.esp32cam +++ b/code/sdkconfig.esp32cam @@ -1212,11 +1212,17 @@ CONFIG_WPA_MBEDTLS_CRYPTO=y CONFIG_OV2640_SUPPORT=y # CONFIG_OV3660_SUPPORT is not set # CONFIG_OV5640_SUPPORT is not set +CONFIG_GC2145_SUPPORT=y +CONFIG_GC032A_SUPPORT=y +CONFIG_GC0308_SUPPORT=y # CONFIG_SCCB_HARDWARE_I2C_PORT0 is not set CONFIG_SCCB_HARDWARE_I2C_PORT1=y +# CONFIG_GC_SENSOR_WINDOWING_MODE is not set +CONFIG_GC_SENSOR_SUBSAMPLE_MODE=y CONFIG_CAMERA_CORE0=y # CONFIG_CAMERA_CORE1 is not set # CONFIG_CAMERA_NO_AFFINITY is not set +CONFIG_CAMERA_DMA_BUFFER_SIZE_MAX=32768 # end of Camera configuration # end of Component config diff --git a/code/version.cpp b/code/version.cpp index a1a3864a..4f2b1e66 100644 --- a/code/version.cpp +++ b/code/version.cpp @@ -1,4 +1,4 @@ -const char* GIT_REV="24b4615"; -const char* GIT_TAG=""; -const char* GIT_BRANCH="master"; -const char* BUILD_TIME="2022-01-09 09:44"; \ No newline at end of file +const char* GIT_REV="2daf6c8"; +const char* GIT_TAG="v10.1.0"; +const char* GIT_BRANCH="wifi-mod"; +const char* BUILD_TIME="2022-01-14 20:11"; \ No newline at end of file diff --git a/firmware/bootloader.bin b/firmware/bootloader.bin index a424168a2fc46ec602d6bef1efff66e34cef7d83..17e690ebbf711ed603bbcd6c9a8bcf34703278b5 100644 GIT binary patch delta 57 zcmV-90LK5&$pO&G0k9$%2r)Q1H8nalIkPGlg-jug`iEIruDhui(pc4EOT0`=YSEX8 Pm)#kz9L~Tb?@It^yg((V(ib9G-<=bFcSy^I` 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

QrW4F87Xteby;oE81tI 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

  • 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%0AMFb9$`Nj7DfpF4lepOix=H3c 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 if@2E>N3SA!xrADJL8Aoa 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 diff --git a/sd-card/html/edit_config_param.html b/sd-card/html/edit_config_param.html index b092782f..8823de24 100644 --- a/sd-card/html/edit_config_param.html +++ b/sd-card/html/edit_config_param.html @@ -323,7 +323,7 @@ textarea { - +

    Analog

    diff --git a/sd-card/html/gethost.js b/sd-card/html/gethost.js index b7cbc078..8a9df763 100644 --- a/sd-card/html/gethost.js +++ b/sd-card/html/gethost.js @@ -7,12 +7,13 @@ function gethost_Version(){ function getbasepath(){ var host = window.location.hostname; if (((host == "127.0.0.1") || (host == "localhost") || (host == "")) - && ((window.location.port == "80") || (window.location.port == ""))) +// && ((window.location.port == "80") || (window.location.port == "")) + ) { // host = "http://192.168.2.219"; // jomjol interner test // host = "http://192.168.178.46"; // jomjol interner test - host = "http://192.168.178.79"; // jomjol interner Real + host = "http://192.168.178.34"; // jomjol interner Real // host = "http://192.168.43.191"; // host = "."; // jomjol interner localhost @@ -20,11 +21,11 @@ function getbasepath(){ else { host = "http://" + host; + if (window.location.port != "") { + host = host + ":" + window.location.port; + } } - if (window.location.port != "") { - host = host + ":" + window.location.port; - } return host; } diff --git a/sd-card/html/readconfigparam.js b/sd-card/html/readconfigparam.js index 9c3fff5e..6b1f725c 100644 --- a/sd-card/html/readconfigparam.js +++ b/sd-card/html/readconfigparam.js @@ -86,6 +86,7 @@ function ParseConfig() { param[catname] = new Object(); ParamAddValue(param, catname, "Uri"); ParamAddValue(param, catname, "MainTopic", 1, false); + ParamAddValue(param, catname, "Topic", 1, false); ParamAddValue(param, catname, "ClientID"); ParamAddValue(param, catname, "user"); ParamAddValue(param, catname, "password"); @@ -157,6 +158,14 @@ function ParseConfig() { } aktline++; } + + + // Make the downward compatiblity with MQTT (Maintopic --> topic) + if (param["MQTT"]["Topic"]["found"] == true && param["MQTT"]["MainTopic"]["found"] == false) + { + param["MQTT"]["MainTopic"] = param["MQTT"]["Topic"] + } + delete param["MQTT"]["Topic"] // Dient nur der Downwardskompatibilität } function ParamAddValue(param, _cat, _param, _anzParam = 1, _isNUMBER = false, _checkRegExList = null){ diff --git a/sd-card/html/version.txt b/sd-card/html/version.txt index 86b57ebe..1709bb98 100644 --- a/sd-card/html/version.txt +++ b/sd-card/html/version.txt @@ -1 +1 @@ -11.4.0 \ No newline at end of file +11.4.1 \ No newline at end of file From 4d997d9473eef0901025a510c07bb25f53005f49 Mon Sep 17 00:00:00 2001 From: jomjol <30766535+jomjol@users.noreply.github.com> Date: Fri, 14 Jan 2022 20:28:01 +0100 Subject: [PATCH 2/2] v10.2.0 --- code/main/version.cpp | 6 +++--- code/version.cpp | 6 +++--- firmware/bootloader.bin | Bin 25808 -> 25808 bytes firmware/firmware.bin | Bin 1716960 -> 1716960 bytes 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/main/version.cpp b/code/main/version.cpp index 4f2b1e66..1a19d5b1 100644 --- a/code/main/version.cpp +++ b/code/main/version.cpp @@ -1,4 +1,4 @@ -const char* GIT_REV="2daf6c8"; -const char* GIT_TAG="v10.1.0"; +const char* GIT_REV="e79c86c"; +const char* GIT_TAG=""; const char* GIT_BRANCH="wifi-mod"; -const char* BUILD_TIME="2022-01-14 20:11"; \ No newline at end of file +const char* BUILD_TIME="2022-01-14 20:20"; \ No newline at end of file diff --git a/code/version.cpp b/code/version.cpp index 4f2b1e66..1a19d5b1 100644 --- a/code/version.cpp +++ b/code/version.cpp @@ -1,4 +1,4 @@ -const char* GIT_REV="2daf6c8"; -const char* GIT_TAG="v10.1.0"; +const char* GIT_REV="e79c86c"; +const char* GIT_TAG=""; const char* GIT_BRANCH="wifi-mod"; -const char* BUILD_TIME="2022-01-14 20:11"; \ No newline at end of file +const char* BUILD_TIME="2022-01-14 20:20"; \ No newline at end of file diff --git a/firmware/bootloader.bin b/firmware/bootloader.bin index 17e690ebbf711ed603bbcd6c9a8bcf34703278b5..2392566159444ff711e8e6f3a610c3eb47aa3338 100644 GIT binary patch delta 57 zcmV-90LK5&$pO&G0k9$%2r@7_GBP?aG_xugg-juj2AybvB=G$jJ@SkKd-o98-`r@? PyrZ=mJI4gkQh&{$jx`xV delta 57 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Ξ=WN5AV5N4BrrZL~O$1Y4C@ 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
    ?wb!mCMm?O7my$KbtZ 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∓)%1}W$u~#IKNTM$A{4Mr_{KM%#X(*cLw&ylO7{a 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%0DH$$$v6ZFdeSobyF8Gxr#C)vL3rC38 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

    VPtJAWE_$OVLy!T%6^UJrYCq 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 F{{hOV!<7I4 delta 298300 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%0Am{RqrIj?9-U96nC_3xCFdaDomOF2um76Ex6H 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 D%gSNV

  • aJtGFvpta^eOo9v^DZO7F^tWBnq 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 delta 393455 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