Week 10 – Hue Controller

So first I tried connecting to the Philips Hue Hub on column 3, but was having issues and kept getting a ‘failed to fetch’ error.

But thankfully Julia came to the rescue with her blog post, and I learned that it works once I download the source code and run the html file locally.

Lo and behold I was able to connect to the bridge !

However, none of the current lights are reachable so next I need to borrow a light to connect.

For my controller, I am going to try and connect it to my drawing machine. I have a function on the drawing machine that will track a person’s location with a Kinect positioned above, so I’m going to try and send data from the Arduino to change the light’s various states (brightness, color, etc.) with the changes happening on the drawing machine.

For testing purposes, rather than set up the Kinect and OpenFrameworks mess, I used a p5 sketch I have that does a mouse follow, kind of imitating what it does with the Kinect.

First I set up Tom’s example Arduino code to send HTTP requests:

Once I got that to work, I moved to try and get the drawing machine to send data to the Nano to then send the HTTP requests.

For starters, I am running my drawing machine using an UNO, I’ve tried in the past to use my UNO Wifi only to realize there is one less PWM pin on the board compared to the normal UNO. So, first I tried to send Serial data from my UNO to a Nano that was connected to the Hue hub. I was able to get the hue to change once, but then it wouldn’t continue changing incrementally like I had set it — I think I am sending too fast.

Tom was kind enough to lend me his WiFi Shield for the UNO so I can try it that way without the extra Arduino.

Sadly it seems like there is not enough memory with the Arduino Uno + WiFi shield to run the code … šŸ™

So I went back to the p5 –> Serial –> Arduino –> HTTP method I was trying before.

I was able to get it to change the value twice (I think) and then it would freeze. I had a delay in the loop so not to constantly be sending a Put request. But not sure what the problem is…

Moving on to the backup plan — repurposing the Thesis Clock / controlling the light (and eventually the drawing machine) with a gyro.

In my quest to figure out the interaction part of my drawing machine, I had an idea to have a hanging object that people could move that would manipulate the drawing machine — using the onboard accelerometer on the Nano.

I was able to get this working with the Philips Hue light bulb, it isn’t as smooth since of the delay of the HTTP requests, but it does change.

Leave a Reply