With December just begun, we are happy to announce that the 2014 incarnation of our MQTT Xmas Tree is now online. Feel free to try it out here!

How did we do it? Well, it consists of three main parts (not counting the tree itself):

  • a RaspberryPi that controls the LED band on the tree and the movement of the star and the Xmas angel (well, for the servo motor that moves the star, we used an Arduino Uno to supply the appropriate PPM signal). We set up an MQTT client on this RaspberryPi that checks for Xmas Tree commands and translates them to the appropriate GPIO actions
  • a second RaspberryPi that has a webcam attached and serves a video stream via motion and apache2 (we followed this great tutorial approximately to get this running). With DDNS, this stream can be reached from the outside world
  • a Vaadin Web UI featuring buttons that send MQTT commands to our MQTT broker (that are picked up by the first RaspberryPi) and displaying the video stream so users can watch the effects of their actions

Getting this contraption to work was great fun — a great way to spend one’s spare time. And a perfect counterweight to tedious debugging sessions 😉

Of course, we are going to open source the tree command code on Github. And here is an overview picture of the hardware we used:


Happy treeing and have a joyful Xmas time!