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.

DLPLCR4500EVM: Initial state of buffers in pattern mode

Part Number: DLPLCR4500EVM

Hello,

I'm developing a custom application that needs to acquire structured light images at high speed.  I am displaying multiple images from the flash memory using trigger mode 1.  I'm struggling to understand where I need to delay acquisition to allow sufficient time for buffers to be populated, specifically at the beginning of the sequence.  I have the following questions.

-When the projector is idle and in pattern mode (pattern validated), are the buffers pre-populated with the first two images of the pattern sequence? 

-When programmatically defining a pattern sequence via USB commands, why does the first pattern need to specify that a buffer swap needs to occur? (This is done in the sample Light Crafter 4500 GUI)

-When a pattern sequence is stopped (not in repeat mode), when are the buffers prepped for the next iteration of the sequence?  For example, does stopping the sequence cause the buffer to be populated with the first image of the pattern or does this happen when the pattern is started?

Overall, I'm looking for clarity on the behavior of the buffers on pattern initialization/startup.

  • Hello!

    Thanks for using the DLP forums! Have you had a chance to check out section 4.1 Pattern Sequence Background of the Lightcrafter 4500's User guide: 

    It goes over some of the details you are looking for. If you still have questions we would be happy to assist.

    Best,

    ~Danny W

  • Hi Adam,

    -When the projector is idle and in pattern mode (pattern validated), are the buffers pre-populated with the first two images of the pattern sequence? 

    It depends on how many number of patterns you are planning to display? For scenarios if a given pattern display configuration  takes <= 48 bitplanes worth of memory, then the buffers will be pre-populated, and also this scenarios is capable of operating maximum pattern display speed as documented.

    Now, for the scenarios, such as (a) Number of patterns displayed takes > 48 bitplane worth of memory (b) user configuration requires loading of pattern data from more than two image index locations on the flash - example: display 3 1-bit patterns from flash image index 0 , 1 and 2 one from each location; this scenario basically requires real time DMA, this topic discussed in this thread https://e2e.ti.com/support/dlp__mems_micro-electro-mechanical_systems/advanced_light_control/f/924/t/337942 

    -When programmatically defining a pattern sequence via USB commands, why does the first pattern need to specify that a buffer swap needs to occur? (This is done in the sample Light Crafter 4500 GUI)

    This is by design and the buffer pointer will be positioned in such a way that on trigger input it jumps to correct buffer and starts displaying the first pattern.

    -When a pattern sequence is stopped (not in repeat mode), when are the buffers prepped for the next iteration of the sequence?  For example, does stopping the sequence cause the buffer to be populated with the first image of the pattern or does this happen when the pattern is started?

    Back to the first discussion. if the pattern contents is <= 48 bitplanes then there won't be and preparation, since content is already downloaded, only the buffer pointer will be positioned as required.  For the scenarios which requires real time DMA, the first pattern will be downloaded from the flash (image index) and kept ready. 

    Regards,

    Sanjeev

  • Sanjeev,

    Thank you for answering my questions.  I'm still a bit unclear on the timing of the initialization of the DMA in the scenario of >48 bit planes.  When is the first pattern download to flash?  After pattern validation, when the sequence is started, and/or when the pattern is stopped?  

    Best,

    Adam

  • Adam,
    Actually as part of pattern validation command execution first DMA will occur. Now subsequent DMA happen when the pattern display is in progress.
    Regards,
    Sanjeev