Tags:
create new tag
view all tags
Back to PSM Lab

DLP Light Commander

The DLP Light Commander is a projector with really, really fast refresh rates and precision timing.

Overview

Quick Stats
Resolution 1024x768 only
Compatible OS Windows XP, Windows 7 (32 & 64-bit)
Static Image Frame Rate (Monochromatic) 6 Hz to 5000 Hz
Dynamic Input Frame Rate (Colour) 60 Hz
Dynamic Input Frame Rate (Monochromatic) 1440 Hz
Onboard Static Image Memory 90MB, enough for 960 bit planes
Part Number 1015647
Serial Number 2910M00395

The DLP Light Commander is a projector that allows for extremely high frame rates, precise control over exposure time, colour balance of monochromatic light, and IR light. It is extremely finicky but very powerful. It runs on 32-bit operating systems only, and has only been tested with Windows XP. There are three different modes for display: Video, where it operates as a normal colour projector at up to 60 Hz; Structured Light, where it displays a series of static, monochromatic images read from onboard memory at rates of up to 5000Hz; and Real Time Structured Light, where it displays monochromatic images from a dynamic input (such as DVI) at up to 1440 Hz. In the software, Structured Light and Real Time Structured Light are differentiated only by source - they are both found under "Structured Light".

NB: Do not set the "LED Strength" parameter to any value greater than 60%. See Errata E0031 on the software download page for more details.

Installation & Start up

Hardware

The DLP Light Commander comes with a power cord, a USB cable, an HDMI to DVI converter cable (the HDMI end connects to the projector itself), and a user manual.

Software Download and Installation

Go to the following link and click on support:

http://www.logicpd.com/products/development-kits/dlp-lightcommander-development-kit

You will need to sign up for an account. To register, you will need the following information:

  • Part #: 1015647
  • Serial #: 2910M00395

Download the control software and the software user manual, which should give you the following files respectively:

  • 1017179A_DLP_LC_Control_SW_1-0-73-859.zip
  • 1015703Rev2_DLP_LightCommander_SW_UM.pdf

Extract the zip file and install the software.

Turning the Projector On

  1. Plug the projector into a power source, leave it turned off
  2. Switch the projector to "Run" rather than "Park"
  3. Plug the USB cable
  4. Switch projector on
  5. Install the USB driver automatically (if necessary), or wait until the computer recognizes the projector
  6. Start up the control software

Using the Control Software

The software is finicky, but relatively straight forward. The best advice is to follow the User Manual's instructions. One key difference between the control software and the different modes cited in the documentation is that the software separates projection mode and input mode. That is, it has two light modes: Video (colour, standard frame rates) and Structured Light (monochromatic, faster frame rates). The difference between Real Time Structured Light Mode and Structured Light Mode as cited in other documentation is the input mode (static image vs. DVI).

The software has different solutions, which have different projects contained within them. The easiest method to creating a new project is using the wizard found in the "New" menu. Note that that bits per pixel is specified when creating a project. Also, switching between Structured Light and Video modes does not always seem to work; creating a new project is often necessary.

Important: Make sure that the DLP Light Commander is plugged in via USB and turned on (in "run" mode) before starting the software.

The USB cable is used to change real-time settings (such as flipping the image horizontally or vertically) and to compile and download a program to the projector. Once the projector has its program in memory, you can unplug the USB cable and the projector will continue to operate. DVI input can come from anywhere. Note that turning the projector off will lose whatever program is stored in memory.

Static image control programs must be tediously constructed by importing every image individually. If the project is in Structured Light mode, you will be asked to specify a threshold for converting it to a bitmap. Images can be either cycle at the specified frame rate, or manually stepped forward/backward.

APIs exist for writing more elaborate control programs, but they have not been confirmed by anyone in the lab. See Additional Features below for more information.

The Different Modes

There are three different modes for display: Video, where it operates as a normal colour projector at up to 60 Hz; Structured Light, where it displays a series of static, monochromatic images read from onboard memory at rates of up to 5000Hz; and Real Time Structured Light, where it displays monochromatic images from a dynamic input (such as DVI) at up to 1440 Hz. In the software, Structured Light and Real Time Structured Light are differentiated only by source - they are both found under "Structured Light".

Important: When changing whether a project is using one of the Structured Lights or Video, you must create a new project. The software fails to compile when you change this without creating a new project.

Video

Video allows for colour projection at standard frame rate either from DVI input or static (colour) images. Video can be displayed at up to 60 Hz, and a maximum of 40 images can be stored in the projector's memory.

Structured Light

This mode displays predefined images at extremely high frame rates (from 6 to 5000 Hz). You must individually import each image into the project, and specify thresholding to create a bitplane. The projector can only store 960 bitplanes in memory. These images will cycle at the specified frame rate, or can be manually stepped through using the control software. There are APIs that might allow for more elaborate manipulation of stored images; see Additional Features for more information.

Real-Time Structured Light

This mode allows for frame rates of up to 1440 Hz specified in real time. The projector takes 24-bit RGB colour information as 24 bit planes, rendering monochromatic light at 24x the computer's expressed frame rate (24 x 60 = 1440). To do this, specify 1-bit colour in the wizard when creating a new project, set the projection mode to Structured Light and the input to DVI. Then, have your display program render RGB colour as 24 bits, with each subsequent bit representing a pixel at a different frame rate. That means that the 8 red bits are the first 8 subframes (called "patterns" by the documentation), the 8 green bits are the next 8 subframes, and the blue bits are the final 8.

Tips & Tricks

  • If the projector is reading input from DVI and is not displaying correctly, try the following:
    1. Put the projector into "Park"
    2. Pull the HDMI end of the cable out of the projector
    3. Plug the HDMI cable back in
    4. Put the projector into "Run"

  • On the Acer Aspire netbook (Windows 7), plugging the HDMI cable in and switching the projector on is a sure-fire way to cause a blue-screen-of-death.

Additional Features

There are several additional features that have not been confirmed by a PSM lab member.

API

It is possible to create a batch file using commands the DLP Light Commander understands. Relevant documentation can be found at the following links:

Sample code can be found by taking the following steps (on Windows XP):

  1. Go to http://www.ti.com
  2. Search for "DLP200app" in the keywords box
  3. Click on "DLPC200 Configuration and support firmware
  4. Click on "Reference Application Source Code for DLP 200 API"
  5. Fill out a form for so-called "government approval" (turnaround was instant for me)
  6. Install, then look at the installation directory ( "Program Files\Texas Instruments-DLP\ DLP LightCommander API Ref Apps\" )

Triggers

The projector has three jacks for analogue triggers that allow for synchronization with cameras or many other devices. The 3 external BNC connectors (User Syncs) are for output synchronization only. There is also an input trigger but this is not exposed on the exterior ports. You need to attach the trigger directly to pins on the board. See the discussion here and this photo of an input trigger.

Loading Images

Images can be loaded via the DLP software application. This requires generating (max) 1024x768 images and loading each one via the GUI. The software will convert these to DBI files. The DBI format is not published, nor is there an external tool to produce these images. However, the software will produce a DBI file from the loaded patterns, and save it to the hard drive. It's apparently fairly straightforward to reverse-engineer this format.

Direct Access to API

The LogicPD control software GUI is tedious to use for repeated experiments, and cannot be scripted. Defining a pattern sequence requires that you click the "add" button, navigate to a file (the file choose defaults to only displaying BMP images), select and add it, optionally choose a threshold value, and click OK. Then it takes a few seconds to convert the file to the native DBI format. For a sequence of hundreds of patterns, this can take a very long time, and making changes to the patterns will be tedious and error-prone. Fortunately, the DBI format is very simple and can be reverse engineered. Even more fortunately, all the important bits are implemented in a DLL file (the control software simply calls this) and one of those DLL functions can execute a batch file (text file) containing commands that map directly onto DLL functions. It's very easy to call these functions from Python. See the attached script for an example of how to generate the DBI files and display them in sequence. There are some tricky aspects to this (particularly dealing with triggers), described in more detail in the script comments. To run the script, make sure that PortabilityLayer.dll and DlpCommDLL.dll (from the SDK) are in the same directory.

-- BradAtcheson - 20 Sep 2011

-- OliverSchneider - 27 Apr 2011

Topic attachments
I Attachment History Action Size Date Who Comment
PDFpdf LightCommanderExternalTrigger.pdf r1 manage 154.5 K 2011-09-16 - 22:42 BradAtcheson Photo of external trigger sync
Texttxt dlp_run.py.txt r1 manage 9.9 K 2011-09-20 - 09:17 BradAtcheson Example structured light upload/run script
PDFpdf dlpa024a.pdf r1 manage 307.0 K 2011-04-29 - 01:27 MushfiqurRouf Local copy of the documentation
Edit | Attach | Watch | Print version | History: r9 < r8 < r7 < r6 < r5 | Backlinks | Raw View |  Raw edit | More topic actions
Topic revision: r9 - 2011-09-20 - BradAtcheson
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback