This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/TDA3LA: Adding new sensor in visionSDK/RTOS

Part Number: TDA3LA

Tool/software: TI-RTOS

Hello,

I'm trying to use the unsupported image sensor in visionSDK.

The sensor is ULIS thermal sensor, but the interface is almost the same as normal CMOS image sensor like the below.

1. Image Data Interface is 12 bit gray.

2. The initial setting should be done by SPI

3. The vsync, hsync, pclk and data is coming out only when the power is given.

So I can see the image signal on the pins.

But I cannot add or change the image sensor format in the base of "vip_single_cam_view" using OV10635.

if you have any guide documents to add new sensor, please let me share.

I will display the image through NTSC TV out.

I'd like to see the default image using OV10635 sensor sequence.

I made the Assert() function [caused by i2c error] passed and I changed the source code "ChainsCommon_SetVidSensorOV10635Prms()" function like the below:

(org)

static Void ChainsCommon_SetVidSensorOV10635Prms(
                                    VidSensor_CreateParams *pPrm,
                                    UInt32 portId[],
                                    UInt32 numCh
                                    )
{
    pPrm->sensorId      = VID_SENSOR_OV10635;
    pPrm->vipInstId[0]     = SYSTEM_CAPTURE_INST_VIP1_SLICE1_PORTA;
#ifdef TDA2EX_BUILD
   //This change is done to support tda2ex VIP1_SLICE2_PORTA
    pPrm->vipInstId[0]     = SYSTEM_CAPTURE_INST_VIP1_SLICE2_PORTA;
#endif
#ifdef BOARD_TYPE_TDA2XX_RVP
    pPrm->vipInstId[0]     = SYSTEM_CAPTURE_INST_VIP2_SLICE1_PORTA;
#endif
    pPrm->standard      = SYSTEM_STD_720P_60;
    pPrm->dataformat    = SYSTEM_DF_YUV422I_UYVY;
    pPrm->videoIfWidth  = SYSTEM_VIFW_8BIT;
    pPrm->fps           = SYSTEM_FPS_30;
    pPrm->numChan       = numCh;
    if(numCh > 1)
    {
        pPrm->isLVDSCaptMode = TRUE;
    }
    else
    {
        pPrm->isLVDSCaptMode = FALSE;
    }
}

(changed)

static Void ChainsCommon_SetVidSensorOV10635Prms(
                                    VidSensor_CreateParams *pPrm,
                                    UInt32 portId[],
                                    UInt32 numCh
                                    )
{
    pPrm->sensorId      = VID_SENSOR_OV10635;
    pPrm->vipInstId[0]  = SYSTEM_CAPTURE_INST_VIP1_SLICE1_PORTA;
    pPrm->standard      = SYSTEM_STD_HALF_D1;                      // Kevin
    pPrm->dataformat    = SYSTEM_DF_RAW16;
    pPrm->videoIfWidth  = SYSTEM_VIFW_12BIT;                     // Kevin
    pPrm->fps           = SYSTEM_FPS_30;
    pPrm->numChan       = numCh;
    if(numCh > 1)
    {
        pPrm->isLVDSCaptMode = TRUE;
    }
    else
    {
        pPrm->isLVDSCaptMode = FALSE;
    }
}

But it doesn't seem to be changed at all.

Please help me out.

Thank you.

Kevin