Laser Lissajous with Audio Sync using Arduino (clone) and Python


I'd like to submit a project that I recently completed.

This project uses a laser pointer and a couple of motors with attached mirrors to display patterns (lissajous figures) that are in sync with music. The audio data is processed by a Python script that extracts frequency information, converts that to motor pulses and send it to the Arduino (clone) via the serial interface.

I have a complete write-up here, which also has a video:


It may be pretty, but I would challenge your claim that it is a Lissajous figure.

A Lissajous pattern is created by two sinusoidal waveforms with a 90 degree phase shift.

This gives various patterns depending on the interaction of the two sine waves and their phase relationship.

A 2 to 1 relationship, for example would result in a figure of eight shape.

Whereas, your project, although interesting, is not going to show this, just a circular pattern that jumps around in an irritating manner.

I did something similar in 1985 using DC motors and PLL to control the phase between the 2 motors so the spirograph image will remain stable. How can I do this today using stepper motors? It would be jerky?

Isn't there a way you could tune it? The output appears to be too random for it to accurately represent a musical interpretation. Sorry to add to the Debbie Downer list.