-
Notifications
You must be signed in to change notification settings - Fork 243
After fixing Issue #11, OV7725 is unable to operate @ 20MHz XCLK #20
Comments
I have checked with the hardware folks, an according to them, 20MHz is the highest signal frequency which can be captured by I2S when operating from an external clock. We'll try to debug this, but can't give any timeline — there are a few higher priority things which are keeping hardware team busy now. |
1. Implemented calculation of test pattern variance to aid troubleshooting of issues with signal lines / image retrieval 2. Issue igrr#20 – Added option to reverse igrr@442ca8a to troubleshoot issue igrr#20
For the record, I did a bunch of tests yesterday and I can't get 20MHz to work. The reason why it "worked" previously was probably because the old code requested less data than what was being sent by the camera, making it somewhat tolerant to data transfer errors. New code doesn't give slack on this, expecting all data to arrive (which makes sense in JPEG mode, for instance). I'll look into this further but for now the highest supported frequency seems to be 16MHz. |
Status update: I now have a camera signal generator model inside a Lattice ICEStick, and it has helped a lot in narrowing down on the issue. At this point I'm fairly confident that at 20MHz one sample is lost at the end of HREF pulse due to a timing issue between pclk and href signals. Figuring out whether this is an issue of I2S peripheral or a side effect of the GPIO matrix is something we will do after the holidays. In the mean time, I'll see if i can work around this, for example by setting "output PCLK when data valid" option in camera configuration registers, and connecting HREF to constant high value. |
Cool idea to model the camera bus signals with FPGA. Do you use some signals from real camera in parallel (judging from the photo) or all camera signals are entirely from the Lattice ICEStick? |
I kept the I2C connection to the camera to make the ESP32 code in |
20MHz now works fine on WROVER-KIT boards with OV7725. With OV2640 in JPEG mode there are occasional glitches visible, possibly due to signal integrity issues. I2S configuration issues related to 20MHz support have been fixed in #31. |
After increasing XCLK from 10 to 20MHz, output of test pattern of OV7725 looks as follows:
It is possible to get legible test pattern by reversing fix of issue #11 applied in 442ca8a
The test pattern with XCLK at 10MHz with fix applied looks as follows::
Is it possible to have have #11 fixed and be able to operate OV7725 camera at 20MHz?
Application to test application in various scenarios including fix reversal is available under https://github.com/krzychb/esp32-cam-demo
The text was updated successfully, but these errors were encountered: