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.

DS90UB960-Q1: Applying trigger on two camera sensor at the same time-continuation

Part Number: DS90UB960-Q1

Hi Team, 

This is the continuation of the ticket "DS90UB960-Q1: Applying trigger on two camera sensor at the same time", Unfortunately i couldn't replay to that ticket.

Our requirement is whenever two trigger came at the same time in two image sensors , we should get both images without any miss.

Current Observation:  images from two camera sensors are getting mixed up when applying trigger at the same time on both cameras.

Additional information:

-We are using external trigger to apply the trigger and currently there is no way of synchronization possible with this trigger signals.

-Currently Round Robin is being used as forwarding mode. [We are not able to capture the image once we changed the mode to any of the  synchronized forwarding mode-( ie capture is getting completed-stuck, we suspect its due to the the precondition for synchronized forwarding is not met)]

-Only one csi port is being used to send the video data to the processor.

-We are using imx8mn processor, Virtual channel is not supported for imx8mn.[ Nxp Tech support team conformed]  

-Is there any way we can get the images from both sensors as two frames if the trigger is happening at the same time?

  • Hello Althaf, 

    Would you be able to provide the video parameters for the two RX ports (Resolution, CSI-2 data type (BPP), and frame rate)? 

    Synchronization forwarding modes will help achieve receiving the image from both sensors as two frames. Regarding the previous implementation of synchronized forwarding, the synchronization can be verified in register 0x35[1] as this bit will be set to 1 when the RX ports are synchronized. With the trigger occuring at the same time between the two devices, we would expect to see synchronized data. 

    Best,

    Zoe

  • Hi Zoe Bison,

    Video Parameters details: 

    Resolution: 1280x800

    Bits per pixel: 8bpp

    framerate: 60fps

    pixelformat=BG12

    -Can you help me with which synchronization forwarding mode will help here to achieve this?

    -if I am using basic synchronized forwarding does it mean that the trigger should happen at the same time?

    -is there any way using round robin synchronization, I can avoid the mix up of image data from two sensors?

  • Hello Althaf, 

    Since the video parameters are the same across the two devices, if the FrameSync signal occurs at the same time, you should be able to use synchronous forwarding. All synchronous modes will require the FrameSync to be at the same time for both imagers. 

    Synchronous modes will wait for data to be ready on RX port 0 and RX port 1 before outputting. In these modes, RX port 0 will output before RX port 1. There are different synchronous forwarding methods that can be used based off system preference. 

    For basic synchronized forwarding, the following format will be used: 

    FS0 – FS1 – FS2 – FS3 – S0L1 – S1L1 – S2L1 – S3L1 – S0L2 – S1L2 – S2L2 – S3L2 – S0L3

    For line-interleaved synchronized forwarding, all sensors will have the same VC-ID, and the processor will process the image based on order of video line reception. This has the following format: 

    FS0 – S0L1 – S1L1 – S2L1 – S3L1 – S0L2 – S1L2 – S2L2 – S3L2 – S0L3 …

    For line-concatenated forwarding, the deserializer will combine the video lines from each sensor to a single line. This matches the following format: 

    FS0 – S0L1,S1L1,S2L1,S3L1 – S0L2,S1L2,S2L2,S3L2 – S0L3,S1L3,S2L3,S3L3 …

    One point to note is that synchronization forwarding modes will not output data if one port is not synchronized or the video data is lost. 

    Best,

    Zoe

  • Hi Zoe Bison,

    Our Usecase is little bit different here, All the time we can't trigger both the sensor at the same time. Most of the time we are triggering one of the sensor at a time.so one of the RX port only have the frame data on that time. but we also need to get both images if someone triggering both the sensor at the same time. 

    So what we can do here if we are considering both the use cases? 

  • Hello Althaf, 

    Since the timing is not consistent between the two triggers, Best Effort Round Robin forwarding is likely the best forwarding method. The two different video data would need to be distinguished by VC-ID. 

    If it is known when the triggers will be at the same time, CSI-2 forwarding settings can be be reconfigured to output synchronously. When it is known the devices will be triggered at different times, best effort round robin can be used. 

    Best,

    Zoe

  • Hi Zoe Bison, VC-ID is not supported by our processer here.

  • Althaf,

    If you can't use multiple VCIDs, then you will need to stagger the imager to make sure that data is only being sent by one at a time. Otherwise the processor will have no way to distinguish which imager packets came from. 

    You will need to ensure that the entire video frame has completed transmission from one imager before any image transmission starts from the other:

    - Imager 1 Frame Start 

    - Imager 1 Video Lines 

    - Imager 1 Frame End 

    - Imager 2 Frame Start 

    - Imager 2 Video Lines 

    - Imager 2 Frame End 

    etc. 

    If any data is sent by imager 2 during the video frame of imager 1, then the processor will have no way to distinguish the two. For example:

    - Imager 1 Frame Start 

    - Imager 2 Frame Start 

    - Imager 1 Video Lines 

    - Imager 2 Video Lines 

    - Imager 1 Frame End 

    - Imager 2 Frame End 

    That would not work. 

    Best Regards,

    Casey