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.

TDA4VM-Q1: Camera format mismatch

Part Number: TDA4VM-Q1

Hello, I am using the j721e custom board.

I'm bringing up a camera with UYVY's output format. 

In this process, the sensor was formatted as {VX_DF_IMAGE_UYVY, 7} and the node only used   capture -> display.

When I captured it using the 's' key and read it in uyvy format, the format and size were not right, so there were two people and a figure that looked like a grid.sample.zip 

And this is my log. log.txt 

However, after setting the format, width, and height on the imaging side, I set the capture_yuv_image to the same size and format. Is there a place other than these two that needs setting?

static IssSensor_CreateParams  gw_ar0233CreatePrms = {
    GW_AR0233_UYVY,     /*sensor name*/
    0x0,                             /*i2cInstId*/
    {0x68, 0x68, 0x68, 0x68, 0, 0, 0, 0},   /*i2cAddrSensor*/
    {0x40, 0x40, 0x40, 0x40, 0, 0, 0, 0},      /*i2cAddrSer*/
    /*IssSensor_Info*/
    {
        {
            640,               /*width*/
            480,              /*height*/
            1,                              /*num_exposures*/
            vx_false_e,                     /*line_interleaved*/
            {
                {VX_DF_IMAGE_UYVY, 7},    /*dataFormat and MSB [0]*/
            },
            0,                              /*meta_height_before*/
            0,                              /*meta_height_after*/
        },
        ISS_SENSOR_GW_AR0233_FEATURES,     /*features*/
        ALGORITHMS_ISS_AEWB_MODE_NONE,  /*aewbMode*/
        30,                             /*fps*/
        4,                              /*numDataLanes*/
        {1, 2, 3, 4},                   /*dataLanesMap*/
        {0, 0, 0, 0},                   /*dataLanesPolarity*/
        CSIRX_LANE_BAND_SPEED_160_TO_200_MBPS, /*csi_laneBandSpeed*/
    },
    2,                                  /*numChan*/
    5233,                                /*dccId*/
};



        capt_yuv_image = vxCreateImage(
                                obj->context,
                                sensorParams.sensorInfo.raw_params.width,
                                sensorParams.sensorInfo.raw_params.height,
                                VX_DF_IMAGE_UYVY
                         );

Also, in order to receive data only with csi1 from the existing singlecam, I set it as below code, would this have any effect?

    /* Config initialization */
    tivx_capture_params_init(&local_capture_config);

    local_capture_config.timeout = 33;
    local_capture_config.timeoutInitial = 500;

    local_capture_config.numInst  = 2U;/* Configure both instances */
    local_capture_config.numCh = 1U;/* Single cam. Only 1 channel enabled */
    {
        vx_uint8 ch, id, lane, q;
        for(id = 0; id < local_capture_config.numInst; id++)
        {
            local_capture_config.instId[id]                       = 1;
            local_capture_config.instCfg[id].enableCsiv2p0Support = (uint32_t)vx_true_e;
            local_capture_config.instCfg[id].numDataLanes         = sensorParams.sensorInfo.numDataLanes;
            local_capture_config.instCfg[id].laneBandSpeed        = sensorParams.sensorInfo.csi_laneBandSpeed;

            for (lane = 0; lane < local_capture_config.instCfg[id].numDataLanes; lane++)
            {
                local_capture_config.instCfg[id].dataLanesMap[lane] = lane + 1;
            }
            for (q = 0; q < chan_per_des; q++)
            {
                ch = chan_per_des * id + q;
                local_capture_config.chVcNum[ch]   = 0;
                local_capture_config.chInstMap[ch] = 1;
            }
        }
    }

    local_capture_config.chInstMap[0] = 1;
    local_capture_config.chVcNum[0]   = 0;

Thank you

  • Hello,
    Due to a regional holiday, half of our team is currently out of office. Please expect a 2 day delay in responses. Apologies for the delay and we appreciate your patience.

  • Okay, thank you.
    Additionally, I set up another camera of the same uyvy type, and similarly,

    the movement looks normal, but the color looks weird and things split in half.

  • Hi Kim,

    The shared image ie captured data does not look like YUV format. The data is available only in lower 8 to 16bits.. The upper bits does not contain any data. Is your sensor really outputting YUV422 data? 

    Another question, which SDK release are you using? There were fixes for YUV422 capture in the older releases. 

    Regards,

    Brijesh

  • Hello

    My sdk version is 8.6.1.3 version.


    The camera goes through the tda3 board and has an isp built in. The only output of this camera is uyvy.


    Additionally, the corresponding ports on this board have not been verified.

    Can such an error occur if the 4 data lanes from deserializer to soc are in a twisted order?

  • Hello Kim,

    I dont think this is some lane issue. I think some misconfiguration in the CSIRX, this is bit old release, so there might be fixes in the release to support YUV422 data. We will have to check few register to confirm if it is configured correctly.

    Regards,

    Brijesh