UPDATE: Arduino and iPhone code is posted!

We have been wanting to re-design our family room for quite a while. Playing music or watching a movie is incredibly cumbersome, because we have 6 remote controls, and so many systems that at least one component is usually not working. We wanted a way to simplify these aspects, while at the same time creating a nice piece of furniture that didn't dominate the room like our current set up.

Project Overview:

For starters, all the woodworking is custom and done by hand, and that alone took about 6 months to complete, working on and off over breaks and during the summer. In addition, there is a lot happening "under the hood".

We have an Arduino mounted inside one of the cabinets, which controls several infrared LEDs pointed at the sensors in our DVD player, cable box, amp, TV screen, Apple TV, and video switcher. The Arduino is connected to our home-wifi network so we can control it from our iPhones on an app that my dad wrote. This app is basically a simplified, condensed version of the 6 remotes we normally need to watch TV or a movie, or listen to music. For instance, with the simple push off a "Watch DVD" button, the iPhone-app connects to our wifi-network and tells the Arduino to flash the correct IR sequence to turn everything on, switch the TV and amp inputs to 'DVD player', and opens the disk drive on the DVD player. The app then switches to a DVD-specific control panel with controls for playing and pausing the DVD player, and volume controls for the amp.

We also listen to music throughout the house a lot, and we use the same sound system that we use for movies. So, wherever we are in the house, we can turn the amp on by choosing "Listen to iTunes" from the app main-menu, and the app will switch to the pre-existing app called "Remote" which allows us to play music from our desktop computer through the speakers in our family room via an airport express.

All of this functionality is nicely condensed into one easy-to-use app on your phone!
The hope is that this entertainment center will make it much more convenient to control entertainment in our house, while at the same time acting as a nice piece of furniture and giving us some cool mood lighting! (there are RGB LED strips mounted underneath to provide some ground effects)

Time Scale:

My dad and I have been playing around with this idea for a while, but we really began designing in fall 2012. By November 2012, we had picked a final design, and when I came home from college for winter break in late December we immediately went to our favorite hardwood supplier and picked out all of our wood. Over the following month we finished the frame assembly and glued up the table top. I had to go back to school in late January 2013, and from then until March neither of us worked on it much. Over spring break we worked for another week, got all the cabinet pieces cut, and the floor panels made. Over summer 2013 we finished the electronics, and then during the fall my dad finished up the software for the iPhone app. Overall, this took about a year to complete.

Step 1: Design

My family is very fond of shaker style furniture, with clean lines and maybe a bevel here and there. We made our kitchen table in this style, and since it sits in the next room, we figured it would be a good choice for the style of this piece. Fortunately, this style is also fairly easy to manufacture, which is good because my dad and I have not had any professional woodworking experience and kind of just make stuff up as we go. Glued mortise and tenon joints hold everything together (basically a tongue and groove design), and these joints are easily made with a mortise attachment on a drill press and a dado blade set on a table saw. 

So, the basic skeleton frame will be assembled in this fashion, with mortise and tenon joints. Plywood panels will fill in the skeleton so it actually looks like a solid piece of furniture, and this will be done by recessing the plywood into grooves cut into the adjacent frame pieces. This will all be explained more later too. We chose to use cherry because we wanted it to match the kitchen table. 

We built this to replace a much larger entertainment center, partly because the current one is way to big and obstructive. So, we decided to make this one pretty low and narrow so it doesn't take up too much space. We tweaked the dimensions in SketchUp until we were happy. As you can see, we went through several different designs before we found one we were happy with (we played around with adding some glass shelves supported by chrome tubes, but decided not to do that, partly because the table top turned out so nice that we didn't want to put anything on top of it!)

<p>This is awesome. I'm trying to learn more about woodworking and have little access to an actual shop, so I appreciate your comments on the photos describing what you are using / doing (like the belt sander). I am trying to learn the various power tools for woodworking and machining, as I do have access to a limited machine shop. it's so cool that you and your dad can do this at home! Do you go to school on the west coast too, or have you come to the dark side (east coast)? (:</p>
<p>Hey Heidi!</p><p>Thanks! Glad to know that the post has been helpful :) </p><p>I go to school near LA, so home isn't too far off. </p><p>Best of luck with the woodworking! Let me know if there's anything you've got questions about and I can do my best to help.</p>
Nice. I would be interested in obtaining the code and extra plans etc
<p>This turned out great! I heard so much about it last summer, it's nice to see it come together :)</p>
<p>Great project, thanks.</p>
<p>First of all, this is freaking awesome. Thanks for the post! Second, a question. I get the breakdown of how the IR signals ended up getting coded, but how did you figure out the specific sequence of signals needed for each command from the remotes? Did you just point the remote at an IR sensor and record the signal it would shoot out with each specific button press?</p>
<p>Yes! Thats exactly how we did it. We wrote an arduino script to recognize the specific carrier frequency and print out a list of off and on durations. I should probably include that in the write up... Thanks!</p>
<p>Hi, I am wondering how you attached the top to the frame? Is it permanently attached or does it just sit on the frame? Also, is there a back on it or did you leave that open? </p><p>I ask because I would really like to use your design as a reference for making my own. It's excellent! Thanks!</p>
<p>Great questions! I can tell you paid attention because no, the top isn't attached at all and nope, theres no back on it! Both of these 'features' make it really easy to work on, especially having the back open. We figured that if we put a back on we'd be constantly drilling through it to run wires, and it makes it much easier to do cable management when you can just slide it away from the wall and get quick access. We will probably attach the top soon though. Good luck on making your own!!</p>
<p>Awesome, I agree with you about the &quot;features.&quot; Thanks for clearing that up for me, and thanks for making such a detailed Instructable. Keep it up!</p>
<p>I'm taking a intro to iPhone app programming course (home study) </p><p><a href="http://www.ciebookstore.com/learn-to-create-ipad-and-iphone-apps-course" rel="nofollow">http://www.ciebookstore.com/learn-to-create-ipad-a...</a> and this is an awesome way to put my skills to work (both as a woodworker and programmer) thanks so much - great idea!</p>
<p>!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! SO COOL. Props to you and your dad.</p>
<p>Thanks nikoala!!</p>
I'd love to see the code for the arduino and the code for the iphone app. Without it, the instructable is sort of just how to build a cabinet.
<p>Code is coming soon! Thanks for reminding me.</p>
<p>I see you attached the code. Thank you! Really great work on this project.</p>
<p>umm...WOW! This is incredible and very awesome. I mean that for the Entertainment Center and the Instructable. Very well done and nice pics too! I would be interested if if you market it what the cost would be and when I could have it! LOL Makes me wish this was in a contest so that I could vote for it. </p>
<p>Thank you so much for the complements! If you're serious about wanting to purchase the control system, send me a PM (collecting all requests there), not sure if I'll be selling them, but if I do I dont want to forget you! Thanks</p>
the code would be awesome! I'm currently using an old logitech harmony remote for my home theatre. I also have a power switching power bar to save energy. My amp is set as the master, so when it gets shut off it kills the power to the TV, xbox, appletv etc. problem I run into is the remote always tries to turn on the TV first and then the amp. and unless I buy a new remote($200), I can't change the order of switching. this could solve my problem quite cheaply. I have most of the components necessary minus the wi-fi sheild. Excellent work on this instructable!
<p>Im uploading the code now! Yeah the wifi shield is sort of expensive too, you could try an ethernet shield instead which are cheaper. Best of luck! You should send a pic when you're done :) </p>
<ol><li>8-O<li>I would love to see that Arduino code as well.<li>Any thoughts on making it web enabled so that it could be device agnostic?<li>8-O</ol>
Can you change the channel with the app also?
<p>Yes of course! When I get back from college I'm going to make a video that shows all the functionality of the phone app.</p>
<p>I'm sure you probably already knew this, but you can set your arduino to have a static IP either IN the arduino's firmware OR as a preset on the router's DHCP service. </p>
<p>I did not know this! Thanks for the tip, that will definitely lower costs if I decide to market this (no screen required).</p>
Awesome design and implementation. The side board turned out beautiful. Am really impressed with the development and the iPhone SW. Any chance you would sell this? This is exactly what I'm looking for.
<p>Thank you! </p><p>I've had several requests for selling this system, I'll talk to my dad and see if thats an option. Thanks for the interest!! (If I dont get back to you soon please send me a PM)</p>
First... Awesome! Second, what about cable management? Well documented and this shows that a well thought out design will yield a spectacular result.
<p>Thanks for reminding me about that, next time I'm home I'll take some pics of how we routed cables in the back</p>
What an artisan...you're family is blessed... Nice build
<p>Thank you for the complements!</p>
<p>Fantastic job.</p><p>Really looking forward to the Arduino hardware setup and the Arduino and iPhone code.</p><p>Well done!</p>
<p>Even though this is beyond my skills I viewed the who ible. I think the other wonderful thing about this project is this was a father-son effort.</p>
Very nicely done and documented. Reminds me of my stereo cabinet I made back in the '70's. In an apartment with only a 3/8&quot; drill and a circular saw. Used birch vineer plywood, and the cabinet fronts were wicker cane. Plans were in a Sunset magazine bought at a super market. What I really liked about it was an impressive piece of furniture, but inside were all the pieces of stereo hardware including a turntable, tape deck, etc!
Wow, really well done and incredibly well documented.
<p>All things old are new again. This reminds me of the Magnavox stereo consoles from the 1960's. Great job!</p>
<p>WOW! Simply amazing. Love the photos of the construction! Have no idea how you guys programmed the iPhone, but awesome nonetheless. The final result is so clean looking!</p>
This is a great design. Looking forward to the iPhone app and code.
Very nice!! Something to certainly strive for!
<p>Dude, this is awesome!</p>
very well put together instructable and beautiful center.

About This Instructable




Bio: I'm a senior at Harvey Mudd in Claremont California. This past summer I worked at Make Magazine. I love working out and eating well ... More »
More by Sam DeRose:Auto-Generated Custom Greenhouse Star Wars Projects Projects for Valentine's Day 
Add instructable to: