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.

DS90UB953-Q1: Test pattern to DS90UB960

Part Number: DS90UB953-Q1

Hello,

As mentioned in my previous post, I have First Sensor camera, containing DS90UB953 Serializer, connected to DS90UB960 deserializer hub. I can generate YUV test pattern on deserializer and display it on screen, but when I try the same settings on serializer pattern generator (hub is set to forward only one camera) I get no image. RX_PORT_STS2 on hub is having LINE_LEN_UNSTABLE set to 1.

1) What could cause this field to be set to 1. If the cause is incorrect setting for pattern generator, can this be ignored and the image still be outputed from deserializer hub?

2) Can the example code for pattern generator from DS90UB960 datasheet (7.5.12.4 Code Example for Pattern Generator) be used in DS90UB953?

3) Does anyone have example of how the registers should be set for DS90UB960 (deser) and DS90UB953 (ser) to output serializer test pattern.

Sidenote:

-the hubs FPD3_MODE field in PORT_CONFIG register is set to RAW12 High Frequency Mode as per guide from First Sensor. If I set it to CSI-2 Mode, the serializer disappears from I2C bus.

-the targeted spec for test pattern image is 1280x720@30fps YUV or RAW12 format

BR!

Martin Lovrić,

Software Engineer

  • Hi Martin,

    Are you seeing consistent lock with no parity errors? Before enabling patgen, can you verify that the link is operating?

    I suggest downloading our Analog LaunchPad tool. There's a PatGen tab in the 960 profile that you can use to configure different patgen parameters. The patgen registers between the 953 and 960 are the same, except you won't program this WriteI2C(0x33,0x01) # CSI0 enable on the 953.

    Best,

    Jiashow

  • Hello Jiashow,

    Thanks for the advice, I've tried to generate test pattern on serializer with settings from the LaunchPad tool, but I still get the same result on the hub.

    The RX_PORT_STS1 fields are as follows:

    - RX_PORT_NUM: 0

    - BCC_CRC_ERROR: 0

    - LOCK_STS_CHG: 1

    - BCC_SEQ_ERROR: 0

    - PARITY_ERROR: 0

    - PORT_PASS: 1

    - LOCK_STS: 1

    And for RX_PORT_STS2:

    - LINE_LEN_UNSTABLE: 1

    - LINE_LEN_CHG: 1

    - FPD3_ENCODE_ERROR: 0

    - BUFFER_ERROR: 0

    - CSI_ERROR: :

    - FREQ_STABLE: 1

    - NO_FPD3_CLK: 0

    - LINE_CNT_CHG: 1

    So according to these values I would assume the lock is OK and that there are no parity errors. How can I verify that the link is operating?

    My second question is could the problem be in the incorrect settings for test pattern, precisely vertical back and front porch, and sync width. I left those as they were in the LaunchPad tool since I'm not sure to what values they need to be set (image attached below).



  • Hello,

    While your lock is b'1, the lock change count is also b'1. Could you read register 0x4D multiple times to see if lock is stable?

    Best,

    Jiashow

  • On subsequent reads the LOCK_STS_CHG is changed to 0.

    The PORT_PASS and LOCK_STS remain 1.

    BR!

  • I'd like to point out that in order to access the deserializer registers I have to disable the driver in OS, so there's nothing trying to capture image from deserializer while I'm reading the registers from deserializer.

  • Hi Martin,

    If your lock is stable then I'd like to check your pattern setting, could you provide your desired parameters and I can try to generate a script for you? Are you only generating pattern on one serializer?

    - Total and Active Horizontal and Vertical Resolution

    - Frame rate

    - Data Type

    - VC ID?

    - Which RX port is the serializer on?

    Best,

    Jiashow

  • I've found where the issue was. The virtual channel ID mapping on the DS90UB960 deserializer was wrong. Now I can capture the image from serializer.

    Thanks for the help!

    Kind regards!