I'm a newbie to S32DS.
THE ENVIRONMENT
I have S32DS 3.4.3 with VSDK 1.7 installed, and I have the SBS-S32V234 development board, which has two MIPI camera's connected. The camera type is OV10640CSP-S32V
THE CHALLENGE
As a first step, I want to stream video from one of the camera's to the HDMI output
THE SETUP
I first created an ISP project based upon ov10640_default, and emitted it to my Linux A53 application project without problems.
Following guidance from an NXP tutorial, I have tailored some defines in isp_user_define.h for the camera as follows, which I think is correct:
#define WIDTH_DDR 1288
#define HEIGHT_DDR 732
#define M_NUM_OUT_LINES (732)
#define MULTITRIGGER 0
#define DDR_OUT_BUFFER_CNT 6
#define LOOP_NUM 30
#define DCU_BPP DCU_BPP_24
In addition, this is what my io_config() function looks like:
void io_config(sdi_grabber *lpGrabber)
{
// *** prepare IOs ***
sdi_FdmaIO *lpFdma = (sdi_FdmaIO*)lpGrabber->IoGet(SEQ_OTHRIX_FDMA);
// modify DDR frame geometry to fit display output
SDI_ImageDescriptor lFrmDesc = SDI_ImageDescriptor(WIDTH_DDR, HEIGHT_DDR, RGB888);
lpFdma->DdrBufferDescSet(FDMA_IX_CAM_OUTPUT, lFrmDesc);
//*** allocate DDR buffers ***
lpFdma->DdrBuffersAlloc(FDMA_IX_CAM_OUTPUT, DDR_OUT_BUFFER_CNT);
}
THE PROBLEM
After compiling the app, and entering debug mode, stepping through io_config is fine, but the subsequent call returns -1, which indicates an error:
LIB_RESULT result = lpGrabber->PreStart();
I'm a bit unsure of what else I can look for to diagnose this, and the error code is quite unhelpful.
Can anybody think of a few things I can try or check to resolve this?
Kind Regards,
Rob
Hi, Rob,
What did you change in your project except "isp_user_define.h"? Pls be careful when you modify ISP, because some change may be not supported by camera.
Yu
Hi Yu,
Thanks for responding. I actually resolved the problem. The ISP does not generate the proper source for this camera, so I wrote my own one, which I submitted to NXP who are keen to build it in their nest BSP release.
Kind Regards,
Rob