The Beaglebone Black

Building an Embedded DLP Projector for $99 and a BeagleBone

Sept. 8, 2017
Technology Editor Bill Wong takes a hands-on look at Texas Instrument’s $99 BeagleBone cape that delivers a compact DLP projector to developers.

Texas Instruments’ (TI) DLP technology is found in applications ranging from ultra-high-definition (UHD) projectors to augmented reality (AR) glasses. Getting started with a DLP platform for developing an application has been a pricey endeavor, and the UHD digital micromirror device (DMD) is not cheap, either. DLP 660 Ultra HD chip is $600 in small quantities. On the other hand, the DLP 660 is only one of many DMD's available. For example, developers can get the DLP LightCrafter Display 2010 for $399. It has a WVGA 854-pixel by 480-pixel DMD.

Those looking for applications like AR glasses and lower-resolution applications may want to check out the new $99 DLP LightCrafter Display 2000 evaluation module (EVM) BeagleBone cape. I tested it attached to a BeagleBone Black (Fig. 1). It was designed to fit, although it is possible to mate the cape with other platforms using a suitable adapter.

The LightCrafter Display 2000 EVM has an I2C interface for control and displays data provided from a parallel interface (Fig. 2). The parallel interface supports 8-, 16- and 24-bit data streams.

The DLPC2607 display controller works in conjunction with the DLPA1000 LED driver to run the DLP2000 DMD (Fig. 3). The DLP2000 is only $19.99, but its resolution is 640-pixels by 360-pixels. Not really high-def, but more than sufficient for a host of applications. Functionally the combination can be scaled to higher definition platforms if needed. The module is also tiny enough to fit into something like AR glasses.

The TI DLP LightCrafter Display 2000 is designed to meld with the BeagleBone Black. The BeagleBone runs TI’s Sitara AM335x processor. The Sitara AM335x is built around an ARM Cortex-A8. It also includes a pair of Programmable Real-Time Unit Subsystem and Industrial Communication SubSystems (PRU-ICSS) that incorporate their own dual RISC cores. There is an Ethernet controller that is designed for industrial applications with support for EtherCAT and EtherNet/IP. The BeagleBone Black can also support HDMI displays.

The BeagleBone Black and the EVM have separate power inputs, and can also obtain power from other sources. The BeagleBone Black can run off a USB connection that delivers 500 mA. The EVM needs 320 mA. The BeagleBone does not need the full 500 mA so it can share. Unfortunately, the BeagleBone uses almost the full amount if it is using the Ethernet connection, so an external power supply is recommended for development work.

The EVM starts up with a standard splash screen (Fig. 5). That told me the EVM was working, but getting the BeagleBone to do something useful takes a bit more work. While TI provides some examples, it takes a bit more programming to take advantage of the EVM.

I have always been impressed with the BeagleBone as a development environment. It’s built in eMMC flash memory, which allows it to be delivered with Linux and a web-based interface that runs out of the box. This is true of other BeagleBone platforms like the new BeagleBone Blue. It has a different pin out for expansion that will not work with the EVM, but has the same type of user interface.

The interface let me get started with the BeagleBone Black—that was no different using the platform in a standalone move. Getting the BeagleBone Black to work with the EVM takes a little more work, but not much. It turns out the BeagleBone queries capes attached to it. The EVM’s I2C EEPROM contains information about its hardware that allows the BeagleBone to include it as one of the supported displays.  

I was able to use the standard Linux mplayer application as outlined in the EVM app note. Mplayer assumes a standard Linux display and does not know the difference between the HDMI interface and the EVM DMD, other that being a different device and resolution.

The script to use mplayer takes advantage of the i2cset program that communicates with the I2C interface on the EVM. Applications can communicate directly with the EVM using the I2C interface. The DLPC2607 Programmer’s Guide has the details.

Normally the system is configured prior to providing streaming data. For example, it is possible to flip the image output along either axis. Likewise, the resolution is handled through the I2C interface.

Overall, tinkering with the display was a matter of a few i2cset calls. This allows the configuration to be included in a script instead of having to write a custom application. Of course, an application can make system calls to use the I2C interface and then deliver data over the data bus.

Developers could use a DLP project to experiment with TI’s DMD, but the cape provides more control than an external display would. While packing the combination into a wearable device might be tough, it is compact enough to prototype many applications as is.

Scanning the Programmer’s Guide will provide a good overview of what can be done with the system. Getting the platform to do something useful should only take an afternoon. It may take more time to experiment with other configuration options, but if a typical display output is all that is needed the EVM will provide this support quickly and easily.

The low cost of the platform makes it a great way to test out a DLP platform. Optics is likely to be a more challenging aspect of using the EVM depending upon the application. It will be interesting what applications can be created using the EVM and BeagleBone combination.

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!