Blog Home

Syncing tunes to Christmas tree lights with the Arduino Opta

Arduino TeamDecember 19th, 2023

We all know that one neighbor who always goes the extra mile when decorating for the holidays, and after taking inspiration from these large displays of light and sound, Marcelo Arredondo, Andres Sabas, and Andrea ZGuz of the Electronic Cats crew decided to build a smaller version for their Christmas tree using the Arduino Opta micro PLC.

The team chose to create their music-synchronized light show with the Opta because of its reliability and bank of four built-in relays that could be utilized to switch specific light strings on or off. Lining up and triggering certain lighting effects for the music was all handled through the open-source Vixen Lights software. In here, the Opta was configured as a quad-channel controller that receives its commands over a GPIO connection sent by an Arduino UNO mediator. The PLC is programmed visually to read a programmable input pin for each relay and then leverage a comparator to toggle the relay when the signal is high.

Back in the Vixen Light software, the team imported their favorite Christmas song and began the process of charting it. First, they generated markers over the audio waveform to signify the beats and overall tempo. Next, various effects were added to the timeline which trigger the lighting channels in a particular sequence. Lastly, the UNO was flashed with a sketch that allowed it to read the incoming Serial data from Vixen over USB and then toggle its digital outputs for the Opta to register.

More information about this project can be found in its write-up here on


Leave a Reply

You must be logged in with your Arduino account to post a comment.