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: The CSI data input of 4K@60Hz in vision app

Part Number: TDA4VM

Hi,

We used two TDA4VM to test the CSI data.

The TDA4VM_1 is run the "run_app_tidl.sh" and generate 4K 60fps data to eDP output.

LT9711UX converts eDP signal into CSI signal.

The other TDA4VM_2 is run the "run_app_single_cam.sh" to receive CSI data and press "s"  save  to *.yuv file.

The architecture diagram is as below:

The .yuv file is correct when we used 4K 30fps, but it is incorrect in 4K 60fps.

The setting of 4K 30fps is as below:

vision_apps/platform/j721e/rtos/common/app_init.c
imaging/sensor_drv/src/imx424/iss_sensor_imx424.c

The setting of 4K 60fps is as below:

vision_apps/platform/j721e/rtos/common/app_init.c
imaging/sensor_drv/src/imx424/iss_sensor_imx424.c

Are there other settings that I haven't considered?

Thanks.

  • I think the required CSI speed goes beyond supported max lane speed on CSIRX, isn't it?

    3840 x 2160 x 24 x 60 ~= 12Gbps..

    Here i am assuming the output format is RGB24..

    Regards,

    Brijesh

  • Hi Brijesh,

    LT9711UX converts eDP signal to CSI data (YUVY 8-bit).

    So we used "{VX_DF_IMAGE_UYVY, 7}" to receive CSI data in the sensor_drv.

    Here is my CSI speed for each lane.

    Thanks.

  • Hi Shawn lin,

    Its very near to 10Gbps lane speed ie 3840x2160x60x16x1.25. So can you try slightly lower fps, may be 55 and see if it works?

    Regards,

    Brijesh 

  • Hi Brijesh,

    I reduce the lane speed from 60Hz to 55Hz, but still did not work.
    My settings are as below:
    vision_apps/platform/j721e/rtos/common/app_init.c
    imaging/sensor_drv/src/imx424/iss_sensor_imx424.c
    The lane speed of my setting is (3840 x 2160 x 60fps x 8bit x 1.25) / 4 = 1140 (Mbps/lane),
    I used "CSIRX_LANE_BAND_SPEED_1040_TO_1200_MBPS" for csi_laneBandSpeed, is it correct?
    Thanks.
  • Hi Shawn,

    YUV422 is 16bit per pixel, not 8bit, though each component size is 8bit. So in the above equation, please multiply with 16 ie (3840x2160x60x16x1.25)/4 ~=2.48Gpbs. 

    Also accordingly change the lane speed in csi_laneBandSpeed. 

    Regards,

    Brijesh

  • Hi Brijesh,

    Thanks for your reminder.

    I used those setting 3840x2160 "55fps、50fps、40fps and  35fps" to test,

    but still can't get the correct yuv file.

    Only 30fps is work fine in 4K resolution.

    The settings are as below:

    Thanks.

  • Hi Brijesh,

    Another question about the CSI-2 signal.

    According to your experience, is it possible to use DuPont Line to cause this result? (The DuPont line is about 10cm)

    The YUV files are correct in 4K from 30fps to 33fps.

    The YUV files are incorrect more than or equal to 4K 34fps.

    Thanks.

  • Hi shawn lin,

    When you say it is working fine at 30fps, where do you see the correct output? Is it in the display device connected to DSS? or are you saving captured image and then viewing it offline? 

    Also when you say it is not correct yuv image, what exactly artifacts do you see in the image? 

    In the above image, i also see that you are changing dss parameters, can you please keep DSS fixed fps and then see if captured images are correct?

    There is a possibility that DuPort Line can affect transfer at high MHz BW.

    Regards,

    Brijesh

  • Hi Brijesh,

    We don't have a 4K display with DP.

    I modify the "app_dof" application to generate RGB pattern in J7_SoC_1 and output to the eDP port.

    And the LT9711UX converts the eDP signal to the CSI signal.

    The other J7_SoC_2 is run the "app_single_cam" application to receive CSI data and press "s"  to save it to the YUV file.

    The architecture is as below:

    It can get the cap_0000.yuv file in the J7_SoC_2, and check the YUV files like below.

    Thanks.

  • From the above diagram, its not clear where the issue is. It might be in any of the 3 components, can you please check them individually and see if they work fine? like

    can you please connect eDP to display device and see it can display correctly for 4k resolution @60fps? 

    Are you sure that the eDP to CSI convertor is configured correctly for the higher speed?

    Regards,

    Brijesh

  • Hi Brijesh,

    Thanks for your suggestions.

    We borrowed a 4K@60Hz display, and the eDP output for 4K 60fps is correct.

    The eDP to CSI converter (LT7911) can print some information, it looks correct in resolution and pixel clock.

    Thanks.

  • Hi Shawn,

    ok, which module do you think is creating issue? Is the doubt on CSIRX? or may be DuPort Line? 

    I think you are using more than 1.5Gbps lane speed, can you please try enabling deskew calibration in the converter?

    Regards,

    Brijesh

  • Hi Brijesh,

    We are trying to use the other converter(LT9611) to check the CSI data. (eDP --> LT7911 --> CSI-2 --> LT9611 --> HDMI).

    Do you mean we need to enable deskew calibration in the converter(LT7911) if the lane speed is more than 1.5Gbps?

    Thanks.

  • Hi shawn,

    Yes, typically for more than 1.5Gpbps lane speed, deskew calibration sequence should be enabled in the CSITX, ie in LT7911.

    Regards,

    Brijesh

  • Hi Brijesh,

    We removed the DuPont line and the resolution can increase to 4K 48fps. (originally only 33fps)

    So we will verify this again after getting the PCBA in the future.

    Thanks for your help.