Build­ing a liv­ing room me­dia cen­ter - Part 2: The In­tel NUC

banner-part-2

Af­ter some wait­ing time, the In­tel NUC fi­nally ar­rived. The NUC, or Next Unit of Com­put­ing, is a small bare­bones-com­puter for about $150 that can be up­graded with an SSD, up to 16 GB of RAM and a WiFi card, if you need one. I chose to or­der the NUC to­gether with a 60 GB Kingston SSD and 4 GB of RAM which is more than enough to run XBMC, the me­dia cen­ter soft­ware I will use, smoothly.

The box of Intel's NUC

Af­ter open­ing the NUC's box, you'll see the NUC it­self, as well as a VESA mount to mount it to the back of a PC dis­play, a pack of screws, a man­ual and an In­tel Celeron sticker.

What's in the box?

In­stalling the ad­di­tional com­po­nents, in my case the SSD and RAM is easy and takes just a few min­utes. First, you re­move the bot­tom cover to get ac­cess to the in­ter­nal com­po­nents. Af­ter that, you can start by tak­ing the RAM and push­ing it in the pre­des­tined slot. It will just snap into place.

Inserting the RAM

Next, I took the SSD, put it into the next slot and fixed it us­ing one of the screws.

Inserting the SSD

As I will con­nect the NUC to my net­work us­ing LAN, I did­n't in­clude a WiFi card, so I could skip that step. Af­ter then putting the cover back on, you have a fully work­ing PC. One thing that's miss­ing though is the op­er­at­ing sys­tem. As I will use the NUC as a me­dia cen­ter PC, I chose to in­stall XBM­Cbuntu, a linux dis­tri­b­u­tion that is op­ti­mized for run­ning XBMC, but un­like other OSes like Open­Elec still pro­vides enough flex­i­bil­ity so that I can in­stall other ser­vices to run in the back­ground. The NUC does­n't have a disk drive, so I down­loaded UN­et­bootin to copy the im­age of XBM­Cbuntu to a USB thumb drive. In­stalling XBM­Cbuntu is straight-for­ward and took about 30 Min­utes as my USB thumb drive is not that fast.

MVI_8560-1

How­ever, when I re­booted af­ter the in­stal­la­tion, I got stuck with a black screen and a frozen mouse cur­sor.

MVI_8560-2This seems to be a com­mon is­sue and luck­ily there's a so­lu­tion. I found the so­lu­tion on In­tel's Com­mu­nity page to be the best and it worked for me. Af­ter that, XBMC would start with­out any prob­lems.

XBMC's default interface

I don't re­ally like the de­fault in­ter­face de­sign and chose to use the Xpe­ri­ence1080 de­sign which looks a bit like Xbox's home screen.

Xperience1080 Theme for XBMC

Also, I in­stalled some plu­g­ins to ex­tend the func­tion­al­ity of XBMC. Some of my fa­vorite plu­g­ins are YouTube, Vimeo, TED, arte, Canal+, Sound­Cloud and TuneIn Ra­dio. In the next step, I wanted to share the hard drive that is con­nected to the NUC in my net­work us­ing Samba. If you plug an ex­ter­nal hard drive into the NUC, XBM­Cbuntu will au­to­mat­i­cally mount it. How­ever, the mount­ing point is not al­ways the same which is a bit im­prac­ti­cal if you want to share it. To set a fixed mount­ing point, I first ran the com­mand blkid: to find out which UUID my ex­ter­nal hard drive has. The third en­try is la­beled "Ex­terne Daten" which is the par­ti­tion I want to mount. Also, as you can see, my ex­ter­nal hard drive is for­mat­ted us­ing HFS+ which is the best file sys­tem to use be­tween Mac OS and Linux.

leo@mediaserver:~$ sudo blkid
/dev/sda1: UUID="7a50722d-ed81-445c-8891-9e0c26176d5f" TYPE="ext4"
/dev/sda5: UUID="bdf61b58-da88-4785-a37b-768800bf6d83" TYPE="swap"
/dev/sdb1: UUID="3ae678de-cbac-3341-8ca3-3902159d561f" LABEL="Externe Daten" TYPE="hfsplus"
/dev/sdb2: UUID="5b3cac30-ee3e-38d2-967a-b5b9237d464a" LABEL="Time Machine" TYPE="hfsplus"

The UUID now has to be in­cluded in the file /etc/​fstab which tells XBM­Cbuntu which hard dri­ves should be mounted where and with which op­tions:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=7a50722d-ed81-445c-8891-9e0c26176d5f /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=bdf61b58-da88-4785-a37b-768800bf6d83 none            swap    sw              0       0

UUID="3ae678de-cbac-3341-8ca3-3902159d561f" /mnt/ext1 hfsplus force,rw
UUID="5b3cac30-ee3e-38d2-967a-b5b9237d464a" /mnt/ext2 hfsplus force,rw

The first few lines should al­ready ex­ist in you fstab file. I added the marked lines to the bot­tom of the file which tell XBM­Cbuntu to mount the par­ti­tion with a UUID of "3ae..." (Ex­terne Daten) to the folder /mnt/​ext1 and the par­ti­tion with a UUID of "5b3..." (Time Ma­chine) to the folder /mnt/​ext2. Also, the lines tell XBM­Cbuntu to ex­plic­itly mount both par­ti­tions read-write which is not the de­fault set­ting on HFS+ file sys­tems. The fold­ers /mnt/​ext1 and /mnt/​ext2 still have to be cre­ated which can be done with the fol­low­ing com­mands:

leo@mediaserver:~$ sudo mkdir /mnt/ext1
leo@mediaserver:~$ sudo mkdir /mnt/ext2

To share your cre­ated fold­ers in the net­work, I in­stalled Samba us­ing:

leo@mediaserver:~$ sudo apt-get install samba-common samba

Then, I edited Sam­ba's con­fig­u­ra­tion file to in­clude the di­rec­to­ries I wanted to share:

sudo nano /etc/samba/smb.conf

Af­ter the changes, my con­fig file looked like this. I did­n't share ext2 yet, maybe, I'll do that later:

[global]
workgroup = WORKGROUP
server string = MediaServer
security = share
public = yes
unix extensions = no

[Media]
path = /mnt/ext1
comment = Medien-Platte
writeable = yes
browseable = yes
guest ok = yes
force user = leo

Af­ter a re­boot the par­ti­tions get mounted to those two fold­ers and shared in the net­work us­ing Samba. Now, to use the hard drive in XBMC, I can add the ext1-folder. Af­ter that, I let XBMC scan my mu­sic and movie li­braries which took about an hour. Now, I have a fully func­tional me­dia cen­ter with ac­cess to my movies, mu­sic and many on­line sources.

The final media center

To con­trol it with a nor­mal IR re­mote, I de­cided to or­der the Flirc which I will re­view in the next ar­ti­cle. In the mean­time, if you have any com­ments or ques­tions, just leave a re­ply in the com­ments be­low this ar­ti­cle :)