Controlling Philips Hue Lights In Ableton Live (Syncing Lights with Music)

For around a year before I got them, I had really wanted Philips Hue lights. I thought it was the coolest thing to be able to create ambient colors in a room using lights. What I thought was even cooler, was how these lights could actually be programmed. Of course, since I have a love for music, I thought it’d be awesome to sync the lights to music and create a neat light display in my bedroom. Finally, about three months ago, I finally gave in and spent nearly two hundred dollars at the Apple Store for a starter-kit for the most advanced version they sell. The first thing I did when I got them home, is downloaded a chrome extension called Huegasm which would allow me to sync my hue lights with audio from any chrome tab. In my case, I used it to sync my lights with Spotify. However, I was very disappointed with the results. I wanted more of a programmable “light show” than a “light display”. At first, I thought about programming something from scratch. My only concern was that it would involve a lot of extra work I didn’t want to do such as creating an editor for the lights. That’s when I thought about using Ableton Live.

For those who don’t know, Ableton Live is a very popular live DAW (Digital Audio Workstation). I’ve seen it used to control midi lights in the past, but I couldn’t find anyone who had attempted to control Philips Hue lights with it. Unfortunately, I don’t really remember how I set the whole thing up, as this was about three months ago. But if I recall correctly, I rewrote a Max for Live plugin I found online that would allow me to control my Philips Hue’s in Ableton. You can view the Javascript HERE, and a text version of the Max for Live device HERE (file->open_as_text to open). Like I said, this was several months ago, so unfortunately I don’t have step-by-step guide. But I may mess around with this soon, and if that’s the case, I will post a step-by-step guide.

Leave a Reply

Your email address will not be published. Required fields are marked *