Build your own HTPC (Home theater PC)
Building your own HTPC (Home theater PC) is a great learning experience for anyone who likes tinkering with computers. This entire project took about 7 hours, and less than $300.00. This can get a little technical, but with a little time and research – it pays off greatly.
My first failed attempt was using my eeePC with Ubuntu 9.10 netbook remix with XBMC (XBox Media Center) running as the interface. It worked, however the lil ole netbook didn’t have the processing power (or real driver support) to play HD YouTube videos fullscreen at a decent framerate. Basically, you get to watch a slideshow of the video.
So I did some research and built a new computer from the ground up to run as my HTPC. The project took me 5 hours of build/install/setup/test time and I was able to keep it within a $300 budget – thanks to free open source software. My final solution…
Hardware
My total hardware cost was less than $300.00 after shipping.
Motherboard / Processor
ZOTAC IONITX-D-E Intel Atom 330 Dual Core 1.6 GHz 441 NVIDIA ION Mini ITX Motherboard/CPU Combo
Storage
Spare 200GB SATA HDD, though if you have the extra cash – get a nice sized (60+ gig) solid state drive drive so theirs no hard-drive noise while playing movies.
Optical Media
I chose to not install any optical drive because I’d rather wait for prices for Blu-ray drives to drop rather than purchase a SATA DVD Rom drive now. If you have a spare one laying around, or have the extra cash – get a SATA Blu-ray drive. The motherboard doesn’t support IDE, SATA only.
Cables
I’m just using the VGA port and an Analog audio cable to connect the PC to the TV. The motherboard has VGA, DVI, and HDMI built in. Get what works with your TV.
Human Interface Devices
Playstation 3 Cordless MediaBoard Keyboard or Logitech PlayStation 3 Cordless MediaBoard Pro
Any keyboard/mouse will work, depends on how you intend to use it. You can also get a blue-tooth remote control, but I haven’t tested this.
Software
Operating System
Ubuntu Desktop 9.10 (32-bit)
Media Center
XBMC
Other
Enable third party hardware drivers and install Nvidia’s driver
GStreamer extra plugins
GStreamer ffmpeg video plugin
GStreamer video plugins for mms, wavpack, quicktime, musepack
Adobe Flash for Firefox plugin
Build
The build out went smoothly, it was a little difficult to get the motherboard inside the case but I was able to manage. If you want to be safe, remove the power supply from the case before installing the motherboard. Also – be sure to punch out the matches holes on the motherboards metal faceplate. You have to snap it onto the case from the inside before installing the motherboard, and theres no room to work once you place the motherboard. Also remove the tightening nut on the wifi antenna connector, and replace once installed, and attach the antenna.
Be sure to hookup the USB plugs, power switch/leds, and audio from the case to the motherboard.
Plug everything in before installing your hard-drive. Once its in there, its hard to reach anything. I tucked all my wires on the side so that air-flow is good to prevent overheating. The case came with an additional fan, however I tested without and the system got slightly warm, but nothing to worry about. Depends on how quiet you want your system to be. If you keep it out in the open air, it should be fine. If you’re putting it into a cabinet, you’ll probably want to use the additional fan.
And here she is, ready for software.
Install
You first need to download and make a Ubuntu 9.10 bootable CD or USB thumbdrive. Once you do, connect your new HTPC to your television, and insert your bootable media device and power her up. If you’re booting from the USB device, you’ll have to go into bios and change the boot order. Simply follow the on-screen instructions for installing Ubuntu. I suggest selecting “auto-login” when setting your password, since this will be used for a HTPC.
Once Ubuntu is installed, the wireless card will already be ready to go, just select your wireless network. Install all updates for Ubuntu, install the Nvidia hardware drivers, and all the GStreamer codex plugins. You’ll also want to disable the screensaver and suspending, so the PC doesn’t fall asleep in the middle of a movie. You don’t have to worry about your screen burning, because XBMC has its own screensaver settings that recognize when video is playing.
Once everything is installed, try watching a few YouTube videos to see if its running smoothly. I can run HD YouTube videos fullscreen just fine, though when the ads pop-up from the bottom, it slows way down – though its manageable. If your videos aren’t running smoothly, be sure you have all updates, and check for hardware drivers.
Now install XBMC
XBMC is the beautiful interface that automatically downloads movie titles, movie poster, fan art, reviews, plots, cast, rating, trailers, ect… It turns your PC into a full blown media center. Checkout the screens (my external USB HD is sitting on top).
You should goto xbmc.org/wiki and spend a good hour or two reading all about it – this thing can do allot. Google Reader, YouTube videos, Family Guy episodes, weather alerts – its quite amazing. I have all my movies backed up on my external USB hardrive, so I just connect it to my HTPC and it loads the movies off of it. You can also connect to network shares and pull the movies over your network. With a little tweaking, you can even get the HTPC to boot straight to XBMC without loading the GNOME desktop. You can skin this system as well, so you can make it look like whatever you want.
Some ideas to enhance the experience
- Setup YouTube channel subscriptions, so you can leisurely watch your YouTube videos
- Subscribe to Netflix or some other movie streaming website
- Backup your current DVDs to your HTPC
Not to bad for $300. Now build your own, and support open-source projects!






January 27th, 2010 at 8:46am
Nice post man. Glad to see you are support Linux and Open Source! That VGA and analog audio sounds very limiting though. I personally couldn’t go for anything less than HDMI connections with HD audio and video. But I’ve been spoiled by the HD content. Keep up the good work man!
April 15th, 2010 at 5:05am
And why do you think VGA can’t transmit HD video?
April 29th, 2010 at 2:19am
Thanks for sharing! I am thinking about building my own HTPC setup and was actually looking into a system based on exactly the same motherboard you use. Since you already have it up and running: You say that YouTube HD runs fine. What about other HD stuff (e.g., h.264 encoded), is hardware decoding working with the nvidia drivers installed and XMBC (I was thinking about using boxee, but that’s the same anyway)? Thanks!
April 30th, 2010 at 1:45pm
HD YouTube videos will play, however – they are not perfect. They still jump a little bit, and if there are other flash banners on the site it will slow it down. Sometimes it gets so bad, I have to resize the browser window so that flash ads aren’t visible (and aren’t taking up processing power). You can blame Adobe for all this (see: http://www.factory8.com/2010/04/steve-jobs-says-flash-is-on-its-death-bed/ )
I haven’t tested h.264, however h.264 gets decoded on the hardware level (as opposed to the software level like flash videos), so I dont see why it would have any problem. I’ll test it out though and let you know.
June 9th, 2010 at 10:29am
Hi, I’m very interested in Linux but Im a Super Newbie and I’m having trouble deciding on the right distribution for me (Havent you heard this a million times?) anyway here is my problem, I need a distribution that can switch between reading and writing in English and Japanese (Japanese Language Support) with out restarting the operating system.
June 17th, 2010 at 5:37am
boxee!
October 4th, 2010 at 7:12pm
Home theature PC???? THEATURE????? you’ve got to be kidding me, you should be arrested by the blogging police for “atrocious spelling”
October 12th, 2010 at 8:53pm
The article has been corrected, no need for the police when I have you.
January 31st, 2011 at 11:42am
Excellent post. I want to thank you for this informative read, I really appreciate sharing this great post.
March 7th, 2011 at 7:14am
It is usually incredible to see in which engineering goes and the long run of gaming is no different. There are a lot of cool and really innovative technologies arising. There is no way to tell which one will make the next big wave, but 1 factor is for confident, it will have one thing to do with acquiring rid of the remote as we know it!