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.

Clearing the DMD (display of a post vector) a requirement?

Other Parts Discussed in Thread: DLPC350

I have read in this post that the insertion of the post vector is "recommended". Does this mean that problems with displaying patterns without clearing the DMD after each exposure are to be expected? I am trying to display a sequence of 1024 patterns (24-bit images flashed to memory) using an external trigger in variable exposure mode. However, I can never proceed past the first 48 patterns. When I trigger the 49th pattern, the DMD starts again from the first pattern. Is anyone else having this issue? Thanks.

  • Hello,

    You are running into the memory limitation of the Lightcrafter 4500 EVM with pre-stored patterns. Section 4.1 in the user's guide describes the memory structure of the Lightcrafter 4500 during this mode.

    Hope this helps,

    Paul
  • Paul, thanks for your reply and providing the reference.

  • I understand that commands to load images can be sent to the DLPC350 directly via I2C and USB. Is it possible to load the memory buffer with the next set of 48 patterns using the LightCrafter software or external trigger?
  • If you're in streaming mode, the device will automatically load 24 bit planes while displaying 24 bit planes. It is a rotational buffer and is described in section 4.1 of the user's guide for the EVM.

    The different triggering modes can be used to tell the DLPC350 that there is a new frame to be displayed and depending on the mode it will pull from the streaming data or from the flash memory.

    I hope this answers your question.
    Paul
  • Paul,

    Thank you for your response. If I am not operating in video streaming mode but have my patterns stored in the flash memory, the buffer does not rotate automatically, correct? In that case, I assume that I would need to force the buffer to load the next set of patterns. How can I do this? I have read about the memory structure and the different trigger options but I have not able to figure this out. Basically, I'd like to be able to perform the buffer rotation (as in streaming mode) with a pre-programmed pattern sequence when all the images are loaded into flash.

    Thank you for your help.

  • The user doesn't have to worry about rotating the buffer - it's handled by the firmware. When using pre-programmed pattern sequence mode, the user defines the sequence and the parameters of that sequence (exposure, etc) and the device takes care of the rest. Are you using the GUI or some custom code to control the Lightcrafter?

    What type of triggering would you like to have? Section 8.4.1 of the DLPC350 datasheet has a good explanation of the different triggering modes available: www.ti.com/.../dlpc350.pdf

    I would recommend that you take a look at the GUI - build a sequence and then dive into the source code to see how it works. That will show you which commands are sent and how the device is controlled.

    -Paul
  • Hi Paul,

    I'm using the provided LightCrafter interface (3.0.1) to first upload the images to flash and program the pattern sequence. I am using an external trigger to advance the pattern sequence.

    The problem that I'm running into is that if I do not clear the DMD after each pattern, only the first 48 patterns are shown (apparently due to the size limit of the frame buffer). Further triggering causes the first 48 patterns in the sequence to repeat (despite additional patterns remaining in the sequence). If I clear the DMD after each pattern, then all 1024 patterns are shown properly. This returns to my original question which is whether or not clearing the DMD is required in order to cause the buffer to clear and refill as needed.

    Thank you.

  • I'm starting to understand better, thanks for the clarification.

    You definitely shouldn't need to clear the DMD after each pattern to show the entirety of your 1024 pattern sequence. How fast are you trying to run your sequence? What is your exposure/period?

    What I'm wondering is if you're attempting to play the sequence too fast and it's grabbing old patterns before the ones have time to load. After each 48 patterns, there is a 200ms load time. The sequence will have to play slow enough for that to occur.

    Perhaps if you share your sequence settings, I can try it here and see what I get on my Lightcrafter.

    Thanks,
    Paul
  • Hi Paul,

    I tried extending the exposure and period to 500 ms but the same problem persists. I am using a DAQ to trigger the DLP externally. Here is a screen shot of the LightCrafter settings:

    Is the 200 ms load time only required for the last (48th) pattern? Can the sequence be run at a higher speed for every other pattern?

    Please let me know if you'd like me to provide additional information. Thank you.

  • Hi,

    Paul asked me to take a look at your issue, and I was unable to replicate your error. But I think we have come up with a good next step to nailing down your issue.

    To ensure your buffer is operating properly could you try loading the patterns again but using the internal trigger? From my experience this requires the current patterns must be cleared, internal trigger must be selected from the drop down, and the new patterns must be added. This test will help us identify where the issue is occurring.

    Please let us know the result of the test.

    Best,

    ~Danny W
  • Hi Danny,

    Yes, the display of the patterns have always been displayed normally with the internal trigger. Is there a problem with the way I have implemented the external trigger? I have noticed that the "Black vector missing" icon turns yellow after I send and validate the sequence. But this doesn't happen when the internal trigger is specified.

    Thanks for your assistance.

  • Hi,

    Okay, well that narrows it down. Can you describe in detail, or send an o-scope picture of the signal you are using to trigger it externally? It is possible that there is something wrong with the trigger. It could be coming in too fast or some other anomaly. This might cycle the patterns properly, but not allow for a reloading of the buffer. A proper trigger period should be longer than the pattern period, as pictured in "Figure 3-11. External Pattern Trigger Mode" of the user's guide. I do not believe the black "vector missing icon" being yellow should be an issue.


    ~Danny W
  • Hi Danny,

    Thanks for following up. I am currently using a test panel for a DAQ from National Instruments as shown below. Unfortunately, I don't have access to a oscilloscope at the moment. I have connected TRIG_IN_1 to a digital output pin which I can manually flip by clicking the switch icon between 0 and 1 (see screenshot below).

    I have tried varying exposure/period values (from 100 to 500 ms) and slowly setting the trigger so there should be sufficient time for the pattern to load and display. But I still am not able to move beyond the first 48 patterns. At the 49th trigger, it simply starts again from the first pattern. Any insights about this?

    Thanks.

  • Okay, so if I understand correctly, you physically click the zero bit to flip it high, and that acts as the external trigger. Quick question, does the pattern sequence 'wait' for you to send the next signal before it proceeds to the next pattern? This means that even if you set it to 500 ms exposure, but wait 2 seconds between clicks it should not progress until the next trigger is sent. This might be easier to test with longer exposure times and different colors each pattern.

    It does still seem like an external trigger issue, so if you could get an o-scope or maybe even a multimeter (if pattern timing is slow enough) we could try and identify when the EVM is seeing a rising trigger edge. Also, what is the voltage for your trigger? And what voltage do you have the input trigger selected to receive? Info can be found in section of 1.5 of the users guide, near figure 1-10.

    Hope that helps some,

    ~Danny W