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.

DLPC3433: DLPC3433 image issue during DSI signal switching with external MUX

Part Number: DLPC3433


Tool/software:

Dear TI Support Team,

I am currently working on a project involving the Allwinner R16 SoC and the DLPC3433 DLP. The setup includes switching video sources between the HDMI input with LT6911 HDMI->DSI converter and the SoC's DSI source using an external multiplexer. Please see a diagram below.


We are experiencing an issue where, after several video source switches, the DLPC image either freezes or displays artifacts.

To try to mitigate this issue, we are currently using the following switching algorithm:

1. Detect HDMI plug-in or removal.
2. Freeze the DLPC image.
3. Wait 100 ms.
4. Switch DLPC to the internal video pattern.
5. Wait 100 ms.
6. Put the DLPC in idle mode.
7. Wait 200 ms.
8. Switch the video source using the MUX.
9. Wait 200 ms.
10. Wake up the DLPC.
11. Wait 100 ms.
12. Switch the DLPC to the external source.
13. Wait 100 ms.
14. Unfreeze the DLPC image.

We suspect this could be due to DSI signal integrity issues during the MUX switching process. Our hypothesis is that the DSI signal integrity may be compromised during switching, which affects the DLPC3433's ability to correctly process an input signal.

Could you please kindly answer the questions below to help us mitigate the issue?

  1. What is the recommended procedure to configure the DLPC3433 when switching the DSI signal with an external MUX?
  2. Is there an I2C reset command or another method to reinitialize the DLPC3433 after switching the DSI source to ensure proper operation?
  3. Should we stop the DSI interface before switching with the MUX to prevent signal integrity issues?
  4. Would additional information such as logs, register dumps be helpful for further diagnosis?

Your guidance on this matter would be greatly appreciated!

Best regards,
Vitali Niakhai

  • Hi Vitali,

    I would recommend trying the following routing:

    • Detect source change
    • freeze DLPC image (1Ah)
      • If you want to switch to splash image or something after this you can but you should unfreeze the image afterwards otherwise this step is unnecessary as it is unfreeze later and never seen.
    • Switch to external source
      • Resend all the proper DSI setup commands + display size commands as you would initially
    • Unfreeze DLPC

    You can also use the idle mode instead of freezing the DLPC and changing the source but I am not sure how each of these would interreact with each other simultaneously. 

    As for your questions:

    1. See my recommendation above
    2. If you want to restart the DLPC you should toggle proj_on GPIO if you have this availability in software. This is the only real way to fully re initialize. Otherwise you could send the I2C command to rerun the Auto-Init batch file (batch file 0) though this may not be exactly the same as a complete power cycle. 
    3. I would recommend verifying your DSI signal integrity on both sides of your mux (especially at the DLPC) and if it is out of spec then consider seeing if this helps.
    4. Some pictures of the artifacts you see may help.

    Hope this helps!

    Max

  • Hi Maximus,

    Thank you for your response!

    I would like to clarify a few points based on the DLPC3433 setup and debug guideline, which indicate that the DSI signal should start ONLY after the projector has fully powered on and the DLPC initialization is complete.

    Currently, we are testing the following sequence:

    1. Power off the DLPC
    2. Set the MUX to no output state
    3. Stop the DSI signal
    4. Power on the DLPC
    5. Configure the DLPC with the necessary setup commands
    6. Wait approximately 1 second
    7. Set the MUX to route the HDMI or internal video to the DLPC
    8. Start the DSI signal from the beginning

    We also have observed that the DLPC3433 displays the image correctly on boot (both HDMI->DSI source or Allwinner R16 DSI source), which suggests that it requires the beginning of the DSI signal for proper synchronization.
    Implementing restarting the DSI signal from the Allwinner R16 during runtime switching is quite challenging.

    This brings me to the main question:

    Can the DLPC3433 handle a start of DSI signal from the middle point, or does it require the full DSI initialization sequence starting from the beginning each time to sync properly?

    Thank you for your support!

  • Hello Vitali,

    So long as there is no DSI data being sent during controller boot up I believe this should be fine. Can you try re writing the DSI settings once the DSI signal is switched?

    Best,

    Max

  • Hello Vitali,

    Do you still need support with this? If so please feel free to respond to this thread.

    Best,

    Max