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.

DLP3010EVM-LC: Displaying custom image

Part Number: DLP3010EVM-LC

Hi

We are controlling a DLP3010EVM-LC using I2C over USB (from C# on a Win10 PC).

I have wrapped "cyusbserial.dll" just like your DevGui (DLP EVM GUI 3.2.0.6) is doing in your "DLPComposer.IO.DLPC34xx.I2CCommandInterface" class in "DLPComposer.IO.dll".

Our application requires workflow:

  1. The projector LEDs are turned off / is not projecting anything
  2. Our software generates an image to project
  3. The projector projects this constant image for ~20 seconds
  4. The projector LEDs are turned off / is not projecting anything for ~20 seconds.
  5. Our software generates a new image and we repeat from step 3

The image projected is constant during the entire duration of the ~20 seconds the image is projected. The next image projected will be different, but also constant during the time the image is projected.

As i understand it we need to either:

  • Upload/transfer the image file (for instance a bitmap or png) to the projector before showing it
  • Stream the image form the PC to the projector

What do you recommend? How do we implement this? Are there any examples of how to do this?

Pseudo code or an example in C, C# or Python will be very helpful and appreciated.

Best Regards

Kristian

  • Hello Kristian,

    Welcome back to the E2E forum. Thank you for your continued business!

    How many images are you looking to display? Referencing the DLPC3478 datasheet, are you looking to use External Pattern Mode? External pattern mode supports 8-bit and 1-bit monochrome or RGB patterns.

    Best,

    Maxine

  • Hi Maxine

    Thank you for your replay.

    When looking in the documentation External Pattern Mode indeed sounds like the mode we need.

    Is it possible to not continuously stream the external pattern to the projector, but instead have it transferred once over the "USB to I2C" connection and then simply turn on/off this pattern?

    Of course we can simply connect an HDMI cable between our PC and the projector and make a simple application that runs on the PC and shows an image full screen on the screen the projector is showing. It do however not sound very elegant and can be error prone. (User moving another window in front of our full screen image, our image not opening on the correct screen, ect.)
    So I like to avoid using the HDMI cable if possible?

    Best Regards
    Kristian

  • Hello Kristian,

    The Internal Pattern Mode has the Run Once register but External Pattern Mode does not. You will need to change the operation mode to send the pattern just once. 

    In external pattern streaming mode, patterns are sent to the controller over parallel interface. In internal pattern streaming mode, 1D patterns are pre-loaded in flash memory and a host command is sent to the controller to display the patterns. Internal pattern mode eliminates the need for an external processor to generate and sent 1D patterns to the controller.

    Best,

    Maxine

  • Hi Maxine

    Thank you for your answer.

    The datasheet states that "Internal pattern mode only supports 1D patterns i.e the pattern data is the same across the entire row or
    column of the DMD". Maybe it was not clear, but the image we need to project is 2D. So I assume we cant use internal mode?

    The fact that we need 2D images/patterns, how do that affect the answer to my previous questions?

    It is no problem for us to have an external processor as the projector will be connected to a PC that will act as the external processor.

    Best Regards
    Kristian

  • Hello Kristian,

    The internal pattern mode only support 1D patterns, If you need to use 2D patterns, you will need to use external pattern mode. This mode makes use of the parallel input on the controllers. You also have option to use splash pattern mode if you want to display 2D patterns that are stored in flash. 

    Here is a FAQ might be helpful: e2e.ti.com/.../faq-light-control-evms-dlp4710evm-lc-dlp3010evm-lc-and-dlp2010evm-lc

    Back to your original post, we don't have example code for your workflow, but you may can refer to the DLPC-API which is a C language routines that provide the fundamental software pieces to use a DLP system. You will need to develop it further for your application.

    Regards,

    Lori