My interest in lasers started in my first semester of college. I bought a cheap HeNe and an Argon-Ion laser on eBay and spent days reading Sam's Laser FAQ. A variety of projects are documented here and in the Updates section.

Most of the things here are very old and for archival purposes only. I've just started working with laser stuff again, so there should be more updates soon on new projects.


LaserLine Icon


I started LaserLine in the fall of 2003 to control a scanner device I built to display graphics with a Laser. This system uses the analog audio output of your macintosh to drive the scanner. Written with an Objective-C Cocoa interface, the underlying audio generation code is being reimplemented from Java to C via Core Audio. After I initially prototyped this software, with Java, my local ACM chapter at UIUC took on the project as an Engineering Open House project (where it won 2nd place in its category in 2005) and greatly improved the software. The original design motivation was to create software with an easy-to-use user interface that anyone could use. Looking back, we had really oversold the concept, but I am glad it helped my entry into the world of laser software.

LaserLine 2.0

The second generation implementation of LaserLine is LaserLine 2.0 written in pure cocoa, removing the audio-java code. LaserLine 2.0 was redesigned from the ground up to promote a whole workflow related to laser show production. Development of this project moved us to a USB dac, rather than soundcard output, and encouraged the development of several side projects. The whole stack of software includes a USB driver for the EasyLase USB DAC card, a file format library for the ILDA format, and the basis of a full-featured Cocoa app for laser show creation and playback. The show creation and playback tool hasn't reached a fully developed stage, but has encouraged the development of several other tools, like ILDAInspector, a simple frame viewer and playback tool.

The modular structure of the application has allowed for testing of text, flash animation import, programmatically generated patterns, and more. Additional information is available on the Trac page.

EasyLase Driver for OS X

The EasyLase USB by Müller Elektronik is an excellent low cost, high-quality DAC with ILDA compatible output. It was selected for the LaserLine 2.0 project. With the cooperation of Joachim Müller, I ported the driver to Mac OS X and have made it available here for download. The API is identical to Windows and Linux drivers, so documentation regarding programming for the EasyLase is applicable. The Mac OS X version implements all of the features of the supported driver and has been extensively tested on PowerPC and Intel platforms on 10.4 and 10.5.

I have also been working on Java language bindings using JNA and a Processing module and sample code which will soon be available as well.

Version History

  • 1.0: Initial Public Release. Includes OS X Installer Package.
  • 1.0b4: Bug fixed related to EasyLaseStop function.
  • 1.0b3: Memory leaks fixed. DMX I/O and TTL output implemented.
  • 1.0b1: Core laser frame output implemented.

Download libEasyLase USB Driver v1.0:


iTunes Visualizer Plug-In

I put together an iTunes plugin for laser visualization of the audio waveform on the EasyLase USB. It requires the libEasyLase driver be installed, and you have a mac hooked up to an EasyLase USB card, but if you've satisfied those requirements, why not play with iTunes and your laser! I've got the source available if you'd like it, but it is rather messy, so please email me if you'd like to hack on it.

Version History

  • 1.0: Initial Public Release.

Download LaserVisualizer iTunes Plug-in 1.0:

Asteroids on Laser MacMame

I think this is the most impressive part of the whole bunch of laser software. I've posted on the blog about this, eventually you will be able to download a version here.


Laser Inventory

Index of lasers I own and operate. Drop me a line if you have questions about operation of these units. Power measurements were recorded by my Ophir AN/2 laser power meter with 2N-SH sensor.

ManufacturerModelTypeDate of ManufactureWavelength(s)Apparent ColorMeasured Power
Melles GriotOmnichrome 643-OLYM-AO3Argon-Krypton IonMay 1999465.8, 472.7, 476.5, 482.5, 488.0, 496.5, 568.2, 647.1 nmWarm White82.3 mW
JDS Uniphase2214-40MLAArgon-IonFeb 1998457.9, 476.5, 488.0, 496.5, 501.7, 514.5 nmBlue52.4 mW
JDS Uniphase1676HeNeMar 2001543.5 nmGreen1.6 mW
PMS Electro-OpticsLHYR-0200MHeNeJune 1991594.1 nmYellow3.3 mW
SiemensLGK-7630HeNeMar 1984632.8 nmRed5.7 mW
Hughes3224H-PCHeNeApr 1981632.8 nmRed6.0 mW
Melles Griot05-LHP-153HeNeSep 1996632.8 nmRed8.0 mW
JDS Uniphase106-2HeNeJun 1990632.8 nmRed13.5 mW

Blu-Ray Laser Pointer

I built a Blu-Ray laser pointer that I feel turned out rather well. It is in an adorable little blue enclosure manufactured by Pomona Electronics.


I have been working on making a laser projector in a style similar to that of Chan and Norm, to produce graphics generated by the next generation of LaserLine.

I built everything and am quite happy with the machined aluminum galvos, but currently I use commercial hardware. I was never able to properly tune the amps. Here are some photos: