Skip to content

Add OV3640 3MP sensor driver support - #860

Open
Kevincoooool wants to merge 1 commit into
espressif:masterfrom
Kevincoooool:feat/ov3640-support
Open

Kevincoooool wants to merge 1 commit into
espressif:masterfrom
Kevincoooool:feat/ov3640-support

Conversation

@Kevincoooool

@Kevincoooool Kevincoooool commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add OV3640 driver (detect/init, QVGA init table, JPEG/RGB565/YUV support)
  • Detect OV3640 family PID 0x3640-0x364F (e.g. 0x364C) on SCCB 0x3C
  • Use OV3640-specific mirror/flip registers (0x307c/3090/3023) per application notes
  • Image tuning via SDE registers: AWB, brightness, contrast, saturation, sharpness, effects, AE level
  • Optional module vendor power-save: PWCOM1 bypass, MCU sleep, EIS off
  • Register OV3640 probe before OV3660 (same SCCB address)

Test plan

  • OV3640 module (PID 0x364C) detected on ESP32-S3
  • QVGA RGB565 preview on LCD
  • set_vflip / set_hmirror / set_whitebal / set_brightness APIs verified
  • Reviewer test with OV3640 and OV3660 modules if available

Implement detection, init tables, mirror/flip, image tuning, and module vendor power-save settings based on OV3640 application notes. Register OV3640 before OV3660 during probe because both share SCCB address 0x3C.
@Kevincoooool

Copy link
Copy Markdown
Contributor Author

@me-no-dev Hi there, could you please push this PR forward if it looks good. Please let me know if there are any other thing need to fix before it merge. Appriciated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant