- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, I try to connect the OV12895 to the CX3(denebola), there are many issues. I make a daughter board to connect the sensor and the CX3, and I can get the 800*480@15fps raw10 data, and the csi-2 clock is 552Mhz, so i think my daughter was work well.
Then i make the csi clock to 138Mhz, and try to get 4096*3072@1fps image, but failed. I uncomment the CX3_ERROR_THREAD_ENABLE and print the error code per 5 secs, I can get some info.
frmErrCnt; /**< Framing Error Count*/
crcErrCnt; /**< CRC Error Count*/
mdlErrCnt; /**< Multi-Data Lane Sync Byte Error Count*/
ctlErrCnt; /**< Control Error (Incorrect Line State Sequence) Count*/
eidErrCnt; /**< Unsupported Packet ID Error Count */
recrErrCnt; /**< Recoverable Packet Header Error Count*/
unrcErrCnt; /**< Unrecoverable Packet Header Error Count*/
recSyncErrCnt; /**< Recoverable Sync Byte Error Count*/
unrSyncErrCnt; /**< Unrecoverable Sync Byte Error Count*/
I don't know what is it actually mean, and how can I fix it .
my configure:
CyU3PMipicsiCfg_t OV12895_RAW10 =
{
CY_U3P_CSI_DF_RAW10, /* CyU3PMipicsiDataFormat_t dataFormat */
4, /* uint8_t numDataLanes */
3, /* uint8_t pllPrd */
139, /* uint16_t pllFbd */
CY_U3P_CSI_PLL_FRS_500_1000M, /* CyU3PMipicsiPllClkFrs_t pllFrs */
CY_U3P_CSI_PLL_CLK_DIV_8, /* CyU3PMipicsiPllClkDiv_t csiRxClkDiv */
CY_U3P_CSI_PLL_CLK_DIV_8, /* CyU3PMipicsiPllClkDiv_t parClkDiv */
0x0606, /* uint16_t mClkCtl */
CY_U3P_CSI_PLL_CLK_DIV_8, /* CyU3PMipicsiPllClkDiv_t mClkRefDiv */
4096, /* uint16_t hResolution */
0 /* uint16_t fifoDelay */
}
and I can capture the MIPI wave, but the DMA callback never called.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, the THS Prepare should be in between the Min. and Max. shown in the tool. You also need to configure the MIPI THS Settle time using the CyU3PMipicsiSetPhyTimeDelay API.
The second argument of theCyU3PMipicsiSetPhyTimeDelay API is the PHY Time Delay Value generated by the tool. (See the bottom right corner of the attached screen shot)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You will receive errors when you do not configure the MIPI properly.
Why did you set VActive to to 10. It is supposed to be 3072. Isn't it?
Can you please get the correct the HActive and Hblanking values, similarly VActive and VBlanking values from the sensor manfacturer and put them in the MIPI Configuration tool?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
my sensor output 4096*3072@3.75FPS, MIPI clock 139MHz, and I measure the waveform like blew:
THS-prepare: 340ns
THS-Zero:610ns
V-active: 246.8ms
V-Blanking: 20.6ms
H-Active: 74.4us
H-Blanking:6.2u
I calculate the THS-Prepare and THS-Zero:
H-Blanking: 4096/74.4*6.2 = 341 Pixel
V-Blanking: 3072/246.8*20.6 = 256 Line
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
And my CX3 configure like blew:
Does this mean that the THS-prepare is too long? Do I need to configure the Sensor to shorten THS-prepare time?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, the THS Prepare should be in between the Min. and Max. shown in the tool. You also need to configure the MIPI THS Settle time using the CyU3PMipicsiSetPhyTimeDelay API.
The second argument of theCyU3PMipicsiSetPhyTimeDelay API is the PHY Time Delay Value generated by the tool. (See the bottom right corner of the attached screen shot)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you very much. I can get the raw10 data.