Parallel IO: ESP32-C5 image streaming with DVP Cameras (ESP32-C5-CAM)

HaqqScripter
Posts: 8
Joined: Fri May 16, 2025 10:00 am

Re: Parallel IO: ESP32-C5 image streaming with DVP Cameras

Postby HaqqScripter » Tue Feb 24, 2026 4:12 am

With various concepts, I was able to solder this on a prototype board and with the correct settings, managed to stream ~32Mbps (AP) via HTTP TCP, and can sustain that speed.
Image 2026-02-24 at 12.00.46 PM.jpeg
Image 2026-02-24 at 12.00.46 PM.jpeg (70.28 KiB) Viewed 268 times
Now, I'm making an open-sourced ESP32-C5-CAM hardware development board. Most of the materials are given (Gerber, BOM, Pick & Place, Schematic) so you can tinker with them or manufacture the PCB. At the moment, ESP32-C5-CAM-BETA1 is not available.
ESP3232-C5-CAM-SAMPLE-IMAGE.png
ESP3232-C5-CAM-SAMPLE-IMAGE.png (2.27 MiB) Viewed 268 times
ESP32-C5-CAM Hardware: https://github.com/HaqqScripter/ESP32-C5-CAM_Hardware

HaqqScripter
Posts: 8
Joined: Fri May 16, 2025 10:00 am

Re: Parallel IO: ESP32-C5 image streaming with DVP Cameras (ESP32-C5-CAM)

Postby HaqqScripter » Sun Aug 02, 2026 8:35 am

Latest performance report for the OV5640 (tested with ESP32-C5) on the upcoming esp_cam_io_parl version 0.1.0-beta.11:

+ Applied auto banding filter.
+ Frame rate increase at normal operation, now the camera captures JPEG images 12FPS (from 10fps) at maximum resolution, and 16FPS (from 13FPS) at QHD resolution.
Screenshot 2026-08-02 162352.png
Example JPEG image streamed at 5MP at 12FPS.
Screenshot 2026-08-02 162352.png (934.96 KiB) Viewed 47 times
v0.1.0 will be marked as released after all of the basic features are finalized, since I haven't finished figuring out the custom implementation of the PARLIO driver to work with the DVP port. If all of the major features listed (such as full DVP port) are implemented, then v1.0.0 will be released.

Feel free to contribute or give feedback about the DVP camera implementation with the PARLIO peripheral.

zamlelectronics
Posts: 1
Joined: Tue Nov 18, 2025 3:34 pm

Re: Parallel IO: ESP32-C5 image streaming with DVP Cameras (ESP32-C5-CAM)

Postby zamlelectronics » Tue Aug 11, 2026 11:23 am

I have successfully be able to interface DVP camera with ESP32-C5 (Or targets supporting Parallel IO peripheral) to achieve 5GHz connectivity without the need to use other SoCs.
This is useful for example, a cost-effective single-chip applications requiring Wi-Fi 6 connectivity. For my use case, it is a dual-band Wi-Fi surveillance camera.
For OV5640, I was able to get ~28fps up to SVGA, ~32fps at HVGA, ~22fps on 1280x960, ~30fps on HD, ~13.5 (max) on FHD/WUXGA as well as QXGA/QSXGA (~10fps max) in its default setting.
You can refer to High Performance Mode (HPM) to require higher frame rates on OV5640 and OV3660. I would say it is comparable to Xtensa chips.


video_transferring_esp32_c5.gif
video_transferring_esp32_c5_pt2.gif

For convenience, I have also made an ESP-IDF component esp_cam_io_parl v0.1.0-beta.10:
ESP Component Registry: https://components.espressif.com/compon ... am_io_parl
GitHub: https://github.com/haqqscripter/esp_cam_io_parl


Introducing High Performance Mode (HPM):
OV5640 (esp_cam_io_parl v0.1.0-beta.7):
  • Allow images to be captured around 15FPS at maximum resolution (2592x1944), you can also achieve 20FPS QHD/FHD with this setting enabled.
OV3660 (esp_cam_io_parl v0.1.0-beta.10):
  • Allow images to be captured around 20FPS at maximum resolution (2048x1536), you can also achieve 30FPS FHD with this setting enabled.
A stable 24MHz XCLK is preferred. View README.md on esp_cam_io_parl for more details.


ESP-IDF component features checklist before official version release:
  • Rewrite esp_cam_io_parl headers and C code (Using esp_driver_parlio currently has some limitations). [Not Complete]
  • Merge and rewrite esp_camera_sensor into esp_cam_io_parl. [Pending]
  • ETM support for some DVP signals (trigger PARLIO RX start). [Not Complete]
  • Allow methods to replicate the valid signal for targets that doesn't have sufficient bit width. [Not Complete]

You can now produce your own camera development board based on the ESP32-C5:
ESP32-C5-CAM Hardware: https://github.com/HaqqScripter/ESP32-C5-CAM_Hardware
OMG, you're a lifesaver :D ! I saw the majority of people saying that this chip does not support DVP cameras at all, which is odd since the ESP32-C5 has a parallel interface. I kept researching and found this forum. This will make my projects a heck of a lot cheaper and simpler since I need dual-band Wi-Fi. I've heard enough about the ESP32-P4 + ESP32-C5 combo—I only need MJPEG streams to develop an in-house IP camera or a digital camera! I don't know why this does not get a lot of attention it deserves. Even the devs themselves didn't do anything about this, even though they seem to have planned DVP using PARLIO in the DevCon24, as mentioned "still under development".

HaqqScripter
Posts: 8
Joined: Fri May 16, 2025 10:00 am

Re: Parallel IO: ESP32-C5 image streaming with DVP Cameras (ESP32-C5-CAM)

Postby HaqqScripter » Wed Aug 12, 2026 7:09 pm

I have successfully be able to interface DVP camera with ESP32-C5 (Or targets supporting Parallel IO peripheral) to achieve 5GHz connectivity without the need to use other SoCs.
This is useful for example, a cost-effective single-chip applications requiring Wi-Fi 6 connectivity. For my use case, it is a dual-band Wi-Fi surveillance camera.
For OV5640, I was able to get ~28fps up to SVGA, ~32fps at HVGA, ~22fps on 1280x960, ~30fps on HD, ~13.5 (max) on FHD/WUXGA as well as QXGA/QSXGA (~10fps max) in its default setting.
You can refer to High Performance Mode (HPM) to require higher frame rates on OV5640 and OV3660. I would say it is comparable to Xtensa chips.


video_transferring_esp32_c5.gif
video_transferring_esp32_c5_pt2.gif

For convenience, I have also made an ESP-IDF component esp_cam_io_parl v0.1.0-beta.10:
ESP Component Registry: https://components.espressif.com/compon ... am_io_parl
GitHub: https://github.com/haqqscripter/esp_cam_io_parl


Introducing High Performance Mode (HPM):
OV5640 (esp_cam_io_parl v0.1.0-beta.7):
  • Allow images to be captured around 15FPS at maximum resolution (2592x1944), you can also achieve 20FPS QHD/FHD with this setting enabled.
OV3660 (esp_cam_io_parl v0.1.0-beta.10):
  • Allow images to be captured around 20FPS at maximum resolution (2048x1536), you can also achieve 30FPS FHD with this setting enabled.
A stable 24MHz XCLK is preferred. View README.md on esp_cam_io_parl for more details.


ESP-IDF component features checklist before official version release:
  • Rewrite esp_cam_io_parl headers and C code (Using esp_driver_parlio currently has some limitations). [Not Complete]
  • Merge and rewrite esp_camera_sensor into esp_cam_io_parl. [Pending]
  • ETM support for some DVP signals (trigger PARLIO RX start). [Not Complete]
  • Allow methods to replicate the valid signal for targets that doesn't have sufficient bit width. [Not Complete]

You can now produce your own camera development board based on the ESP32-C5:
ESP32-C5-CAM Hardware: https://github.com/HaqqScripter/ESP32-C5-CAM_Hardware
OMG, you're a lifesaver :D ! I saw the majority of people saying that this chip does not support DVP cameras at all, which is odd since the ESP32-C5 has a parallel interface. I kept researching and found this forum. This will make my projects a heck of a lot cheaper and simpler since I need dual-band Wi-Fi. I've heard enough about the ESP32-P4 + ESP32-C5 combo—I only need MJPEG streams to develop an in-house IP camera or a digital camera! I don't know why this does not get a lot of attention it deserves. Even the devs themselves didn't do anything about this, even though they seem to have planned DVP using PARLIO in the DevCon24, as mentioned "still under development".
I see, well thank you. I'm glad that you find this helpful for your projects ;) .
It is fine. Those who want to create a camera project based on the ESP32-C5 (or any targets that support the PARLIO peripheral) can search and find this forum.

Who is online

Users browsing this forum: No registered users and 0 guests