Other Parts Discussed in Thread: DLPC350
In our application we control the projector via the C/C++ API shipped with the GUI. We use the projector in pattern display mode only and
build up a pattern lookup table (PLUT) with N patterns. The patterns are either single bit or 8 bit planes. The bit planes are stored within
M images in the image lookup table. All patterns have the same exposure.
The PLUT with N entries may look like:
#Pattern Index //further parameters as needed by DLPC350_AddToPatLut
0
1
2
3
4
5
.
.
.
N
The projector is triggered via a hardware trigger signal.
As far as I understand the projector maintains a pointer into the pattern lookup table and the pointer is incremented after each new trigger signal. Once the projector
received the Nth trigger signal the pointer is reset to the first entry of the pattern lookup table when using the repeat option...
In our application we would like to define "sub pattern lookup tables" (sub PLUTs) which are defined by an offset into the pattern lookup table + a length parameter which defines the number
of patterns in the sub PLUT.
For example: subPLUT(offset=2,length=4) would configure the projector such that a new trigger signal projects pattern 2, then 3, 4 and 5. Then the pointer would be
reset to pattern 2 (=defined offset).
While we could just define and upload a new pattern lookup table to the projector which represents a sub PLUT, we would also need to validate the lookup table which causes a
200-300 msec penalty in total (incl. upload), which we can not afford in our application.
I see the need for validating the PLUT when we define/upload a new one, as exposure times, bit planes etc. could have changed.
However, we would define/upload the PLUT only once and in order to trigger a sub PLUT only the pointer into the PLUT would need to be changed.
This is quite similar to the request in
e2e.ti.com/.../2264454
but AFAIK the latest lightcrafter api (3.1.0) dates back before this request.
Do you see a possibility to implement/use the sub PLUTs already with the current api?
Is it possible to control the pointer into the PLUT from outside without an additional validation command? If so, we could implement
the subPlut functionality on our own...
Thank you in advance
John