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.

DLPC3478: Switch pattern set & Control exposure time within the same pattern set

Part Number: DLPC3478

Tool/software:

Hello,

I'm currently developing a fringe projection 3D measurement system using a TI DLP-based projector.
Instead of using the provided TI GUI, I would like to achieve the following functions through programmatic control :

  1. Switch between different binary pattern sets

    • For example, projecting a 10-pattern binary sequence or a 20-pattern binary sequence depending on the use case.

  2. Control exposure time within the same pattern set

    • Adjust the exposure time (or pattern display duration) per pattern set or per pattern, ideally in sync with an external trigger.

Could you please advise:

  • Whether these functionalities are supported by TI’s firmware or API (DLPC commands)?

  • Which interface and commands (or documentation) I should look into to implement this?

  • Any relevant examples or SDK features that would help?

Your guidance would be greatly appreciated. Thank you!

Best regards,
Gunhui Han

  • Hello Gunhui,

    Thank you for reaching out through E2E, I hope I can help get you to a solution as quickly as possible.

    I understand that you are not utilizing the TI GUI and would like to achieve those functions. I would recommend you to initially utilize the GUI and see what is being programmed and follow those steps. Think of the GUI as an example you can follow and implement using your own programmatic control.

    You can see this example by performing higher-level functions in the 'Light Control' tab of the GUI and check against the 'Debug->Command Log' page entries.

    Additionally, for these controls you should search within the DLPC3478 Software Programmer's Guide for what you're trying to control. I'm not sure if you're utilizing an External or Internal Pattern here, so I can't give specific functions for either #1 or #2. You should look at section 3.4 'Light Control Commands' and see what you need to set accordingly.

    Unfortunately, we do not offer an SDK, rather, we have published API code for reference of these commands under the controller product page on ti.com - DLPC3478. The API package has documented examples within the samples folder within .C files but the 'api' folder has the structures of OpCode that is utilized. This OpCode can be searched for in the format '0x96' for example when searching for Write Pattern Configuration.

    You may utilize TI's Code Composer Studio (CCS) as well with this code.

    Best,

    Aaron

  • Hello Aaron,

    Thank you for your help.

    I have an additional question regarding the use of internal patterns.

    From the GUI (see attached screenshot), I’ve configured multiple pattern sets (e.g., Pattern Set (1), (2), (3), (4), etc.) and defined their order in the "Pattern Set Order" list.

    My question is:

    Is it possible to select and run specific pattern sets from this list—for example:

    • First run: use Pattern Set index 0 and 1

    • Second run: use Pattern Set index 2 and 3

    ...without reprogramming the flash or modifying the entire pattern set order every time?

    If so, could you let me know how to approach for allowing such control via DLPC3478?

    Your guidance would be greatly appreciated!

    Best regards,
    Gunhui Han

  • Hi Gunhui,

    Aaron was out of office the past few days. Please give him another day or so to get back to your question. Thank you!

    Regards,
    Michael Ly

  • Hello Gunhui,

    I'm sorry to say that no, you are not able to change the Pattern Set Indices on-the-fly.

    Best,

    Aaron