Difference between revisions of "User:Alx9r"

From LinuxMCE
Jump to: navigation, search
(uTorrent w/ WebUI)
(uTorrent w/ WebUI)
Line 196: Line 196:
  
 
:1. I installed wine using this command:
 
:1. I installed wine using this command:
  apt-get install wine
+
  sudo apt-get install wine
 
  winecfg
 
  winecfg
 
:2. I created a symbolic link to the media drive:
 
:2. I created a symbolic link to the media drive:
Line 210: Line 210:
 
::d.  create the uTorrent folder on the media drive
 
::d.  create the uTorrent folder on the media drive
 
  mkdir /media/bi/uTorrent
 
  mkdir /media/bi/uTorrent
:3. create a symlink to the media-drive-uTorrent-folder from the .wine Program Files folder
+
:3. I set linuxmce as the owner of all files and folders on the media drive.
 +
sudo chown -R linuxmce /media/bi
 +
:4. create a symlink to the media-drive-uTorrent-folder from the .wine Program Files folder
 
  cd ~/.wine/drive_c/
 
  cd ~/.wine/drive_c/
 
  cd "Program Files"
 
  cd "Program Files"
Line 220: Line 222:
 
  unrar e o- webui_v0.310_beta_2.rar
 
  unrar e o- webui_v0.310_beta_2.rar
 
:5. run uTorrent
 
:5. run uTorrent
  sudo wine utorrent.exe
+
  wine utorrent.exe
  
 
===Networking===
 
===Networking===

Revision as of 01:06, 20 May 2008

My Benchmark System Attempt

Note that I am in Canada and all prices are as paid before tax in CAD.
System Diagram

In May 2008, I began building a LinuxMCE test system. I wanted to see if I could replicate at least part of what I saw in the Video. The test system system will hopefully become my main working home theatre system.

AV gear-wise, I started with a completely clean slate here as I had nothing: No TV, no speakers, no receiver, no remotes -- a blank canvas. Nice. This is gonna be fun.

My criteria for the design of this system is as follows:

  1. Wherever possible use known-compatible and mainstream components.
  2. Wherever possible follow recommendations from forums, reviews, Video and wiki.
  3. Use components in the price/performance sweet spot.
  4. Aesthetics should be living-room friendly.
  5. Keep it simple, but still test the broad capabilities of LinuxMCE.

I intend to document the design and results from this system as completely as I can. That way, it can hopefully serve as a benchmark for others to replicate or at least learn from.

Hybrid Box

I am starting with a core/hybrid topology to keep my costs down. If all goes well, this hybrid box will become my core server that lives in a closet, and I will go to a smaller dedicated media director in my living room.

Criteria

In addition to the criteria I already mentioned, the design of my hybrid was also guided by the following:

  1. Only components available through ncix.com, preferably in stock.
  2. Tend toward components that lend themselves to eventual use as a dedicated core serving 2 or 3 media directors.

I opted to put two HDD in the system to allow for easy software upgrading and re-installation without losing media. I have read that installing LinuxMCE on a partitioned HDD is not well supported. Having a separate system HDD should allow me to install LinuxMCE from bare metal without losing media or spending time tranferring it.

Bill of Materials

Component Model each Notes
Motherboard ASUS M2NPV-VM $94.01 used in Video, now out of production
breakout ASUS SPDIF-OUT/OPT $9.02 SPDIF breakout board
breakout ASUS 9PIN Serial Port Header $6.60 two of these to breakout COM ports
CPU AMD Athlon 64 X2 4600+ EE Dual Core Processor AM2 Windsor 2.4GHZ 512KBX2 65W 90NM $80.92 Video used 4400+, 4600+ is cheaper and maybe faster
heatsink Scythe Mini Ninja Heatpipe Fanless Heatsink AM2 $38.98 should be good enough to cool w/o CPU fan
RAM Kingston PC2-5300 512MB DDR2-667 CL5 240PIN DIMM $16.70 2 sticks
second ethernet adapter ENCORE ENL832-TX-RENT $8.68 based on Realtek_8139
TV Tuner Hauppauge WinTV-PVR-150 MCE $79.78 comes with a remote that looks like a Windows MCE Remote
HDD 1 Hitachi Deskstar P7K500 500GB SATA2 7200RPM 16MB 3.5IN $87.20 media drive
HDD 2 Seagate Barracuda 7200.10 80GB SATA2 2MB 11MS 7200RPM Hard Drive $42.64 system drive
SATA Cable nGear Serial ATA SATA Right Angle Cable 18IN 7PIN $2.69 2 come with mobo, straight cable would be fine too, right angle was cheapest
optical drive Pioneer DVR-212D Black 18X6X18 DVD+RW 18X8X18 DL 10X SATA 2MB $32.19
CD Audio Cable $3.00 to connect optical drive audio out to mobo onboard audio
case Silverstone Lascala LC17B $129.99 HTPC form factor, big enough to accomodate conversion to core
power supply OCZ StealthXStream OCZ500SXS 500W $61.99 cheap, works, fairly quiet

Assembly

With all of the parts in hand except for the SPDIF-OUT/OPT I tackled the build. Assembly took about 3 1/2 hours. It probably would have been quicker, but those hours were around midnight. There was enough room for all the ports on the backpanel -- I'm using 7 of 8 slots in the case, and both PCI slots on the motherboard (2nd ethernet, tv tuner). I was surprised at how good the optical drive looks in the case. The finished look is achieved by a piece of aluminum extrusion that is brushed and anodized to match the front panel that is double-face-taped to the drive tray. I was expecting a struggle to get the door to align with the case well enough to look good, but it looks pretty nice on the first try. Maybe I just got lucky. Regardless, I'm happy with the front panel.

There were only two things that I didn't like about this kit:

  1. The Scythe Mini Ninja Heatsink is so big that it obstructs access to much of the motherboard (put this guy in last). The real problem is that one of the clips that hold the heat sink in place is adjacent the side of the case and underneath the heatsink. This makes it a bit of a challenge to get the heat sink clipped in place. The clips themselves don't provide nearly as positive retention as the stock AMD heatsink. It does seem to be providing adequate cooling although I haven't stress tested this setup yet.
  2. The ATX12V 4-pin socket is on the corner of the motherboard furthest from the power supply. The power supply is barely long enough to reach, which eliminates the possibility of doing a nice routing job with that cable.

The Lascala case is very nice. I'm sure there are even nicer-looking cases out there, but I picked mine up for only $130 so I am very happy with it.

With the case open the case and power supply fans are definitely noticeable. On the other hand, at about 4 feet they were quieter than my refrigerator at 20 feet. I don't suspect this will be an issue, but the fans were louder than I was expecting from the various case and power supply reviews I had read.

The other thing I liked was that the Silverstone Lascala case and M2NPV-VN motherboard seemed to be made for one another. All of the frontpanel ports had a place to plug into on the motherboard, and there were just enough slots in the case to accomodate all of the breakout boards. The CPU socket located perfectly so that the two quiet 80mm case fans draw air directly over the heat sink.

I was happy to see room for 6 hard drives in the Lascala case.

Hardware Testing

Once the kit was assembled, I connected a mouse, keyboard, and an old Dell CRT via a VGA cable and pressed the power button. Nothing happened. I narrowed it down in a few minutes to the power button on the case. I swapped the power and reset cables and it fired up when I pressed the reset button. I'll investigate the DOA power button later.

The system hung during POST complaining of a failed CPU fan. I have no CPU fan, so it took a quick trip into the BIOS to disable that warning.

I ran the Memtest 86+ tool on the stresslinux boot disk for 7 hours with no errors. The "stress" option would not boot, so I haven't performed a processor stress test yet. I also ran the Hitachi Drive Fitness Test from its own boot disk. It also produced no errors. So far so good.

BIOS Tweaks

I made the following adjustments to the BIOS:

  • set Power->HardWare Monitor->CPU Fan Speed Warning to disabled (otherwise the system will hang at boot complaining that the CPU fan isn't spinning)
  • set Advanced->Chipset->frame buffer size 128MB RAM (otherwise the system will bog down when using UI2 with overlay)

LinuxMCE Install

At the start of setup, I had both the TV connected to the HDMI output as well as an old CRT monitor connected to the VGA connector. With this setup, some parts of the overall installation are shown on the TV while others were shown on the monitor.

Bare-metal Install

I downloaded a torrent of the Linux MCE 0710RC1 AMD64 DVD .iso and burned it to a DVD. I plugged a cable from the Realtek network card into my router and unplugged the power supply for about a minute to reset all the chips in the system -- the Realtek-based network card seems to get in a bad state sometimes. I also rebooted my router to make sure it was able to provide a good connection to the internet. Then I booted from install DVD and let the OS install. This took about 25 minutes. During that time it only prompted me to select the default password and the disk to install to, then near the end to remove the install DVD.

There were a few moments during install where I thought I had encountered a problem:

  • There seems to be an install-time screensaver. It basically just blanks the screen which cause my heart to sink as I thought something had gone wrong. The mouse did nothing to bring it back, but pressing the shift key worked fine. Whew.
  • There was a point in the install where the system displayed "Probing System for BIOS drives, this may take a while." A while in this case was about 10 minutes, then install progress continued.
  • Shortly after the "Probing System..." step completes, the screen went blank except for a flashing cursor for about 2 minutes. Then, it showed some aliases for www.google.com and continued.
  • Sometimes I found that during the install the system hangs indefinitely at the flashing cursor. Everytime this happened, I found that there was some problem with the network connection to the internet.
AV Wizard

At the AV Wizard, I made the following selections:

  • Resolution Settings: DVI/HDMI, 1080p (16:9), 60 Hz (after clicking OK, the wizard display switched to the TV and was no longer shown on the monitor)
  • Graphical Aspect: OpenGL with overlay (medium) (don't forget the Frame Buffer Bios Tweak for alpha blending to work) Note: Selecting OpenGL with alpha blending (high-end) causes tearing on video playback.
  • Adjust Image Size: No adjustments
  • Audio Settings: -TBD once my receiver arrives-
Setup Wizard

The next step was the setup wizard. This is the one from the Video with video clips of Sarah prompting you to do various things. I simply followed the prompts. After the wizard and a few minutes of letting the system set itself up, the progress bar reached 100% and the LinuxMCE showed the on-screen orbiter with pictures as the background. It is worth noting that the pictures at this point are a good sign that the internet connection is working.

Install dvd css, Rip a DVD

DVD CSS is required to rip DVDs but isn't installed by default.

From the on-screen orbiter I selected Advanced->Advanced->Add Software. This shows the Add Software screen from the wizard. I chose to install DVD CSS even though it showed as being install already. I later noticed that once all the downloading and installing took place, a big green checkbox appeared beside DVD CSS.

After I was pretty sure that the dvdcss downloads had completed and were installed, I popped the "Finding Nemo" DVD into the optical drive. LinuxMCE showed a message about a disc being detected, then the screen went blank for a worrying amount of time and eventually the movie started playing, no warnings, previews or anything. Nice.

Ok, I wanted to rip Nemo to disk, so I exited the playing DVD and selected Manage Drives which showed the DVD. I clicked on the Rip icon and the ripping commenced. After about 10 minutes, a message appeared saying the rip was complete.

Now to play the ripped copy. I removed the DVD from the drive just to make sure that it wasn't going to be played. I clicked media->video and there was Nemo. A few more clicks and the movie started. Sweet success.

Media Drive Setup

I opted to use a built-in (sata connected) secondary media storage drive. This scheme has two qualities:

  • The media drive can be formatted XFS so that LinuxMCE "listen" for new media files that are copied to the drive. Other filesystems don't allow for this.
  • Fresh installations of LinuxMCE can be put on the primary drive without losing media. If you have only a single drive, this is not possible without going through a less-supported multi-partition installation.
Pre-Installation

Before installing LinuxMCE, I formatted my secondary media drive to the XFS filesystem using the gparted LiveCD. Then I created the standard LinuxMCE media drive folder structure on that drive. The structure looks like this: public

|-data
   |-videos
   |-music
   |-pictures

Also before installation, I moved all of my media to the appropriate folder on the media drive.

Other Necessary Setup Steps
  • LinuxMCE did not detect the Hauppauge WinTV-PVR-150 MCE automatically. I followed the manual configuration directions.
  • Interlacing is disabled by default. I turned it on by setting Admin Page->Wizard->Devices->Media Directors->Deinterlace Quality to high. The page lists multiple media directers, so make sure you are setting Deinterlace Quality for the right one.
  • The key codes for the Hauppauge remote that came packaged with my WinTV-PVR-150 MCE are not the same as a Windows MCE Remote, even though it looks very much like one. I had to add support for it manually by following the add support for new remote controls instructions. I attmepted to share my IR codes for this remote. The device template is called "PVR-150 remote (USBUIRT)". Hopefully it will be included in the next LinuxMCE release.
Miscellaneous Setup Notes

According to the end of this thread the receiver that comes with the WinTV-PVR-150 MCE is now plug and play but requires a few setup steps, however, I was not able to get it working.

Optional Installation Steps

uTorrent w/ WebUI
1. I installed wine using this command:
sudo apt-get install wine
winecfg
2. I created a symbolic link to the media drive:
a. find where the media drive is mounted:
cd /mnt/device
ls
In my case, this resulted in only one result 32.
b. I checked to make sure that 32 was the right drive:
cd 32
ls
c. create a symlink to the media drive:
ln -s /mnt/device/32 /device/bi
d. create the uTorrent folder on the media drive
mkdir /media/bi/uTorrent
3. I set linuxmce as the owner of all files and folders on the media drive.
sudo chown -R linuxmce /media/bi
4. create a symlink to the media-drive-uTorrent-folder from the .wine Program Files folder
cd ~/.wine/drive_c/
cd "Program Files"
ln -s /media/bi/uTorrent
4. get uTorrent
cd uTorrent
wget http://download.utorrent.com/1.7.7/utorrent.exe
wget http://download.utorrent.com/beta/webui_v0.310_beta_2.rar
unrar e o- webui_v0.310_beta_2.rar
5. run uTorrent
wine utorrent.exe

Networking

My internet connection is DSL provided by Telus. That connection is protected by a hardware router/firewall. The "EXTERNAL" network card in the LinuxMCE Core/Hybrid is plugged into that router/firewall. Other media directors will be connected to the "INTERNAL" network.

Router/Firewall

I am using a Linksys WRT54GL wireless router v1.1 running OpenWrt/X-WRT.

User Friendly URL to Core

To give the core a static IP (in this case 192.168.1.103), I added the following line to the WRT54GL's dnsmasq.conf file:

dhcp-host=192.168.1.103,dcerouter

To make the core's IP address map to some user-friendlier names, I added the following line to the WRT54GL's hosts file:

192.168.1.103	mc mediacenter mce linuxmce dcerouter

With these entries, you can enter http://mce into the address bar of a browser and end up at the admin page. No IP address entry necessary.

Bittorrent Port Forwarding

Under Network->Firewall, create a port forwarding entry that looks like this:

Match                     Target          Port	 
Destination Ports: 60000  192.168.1.103   60000

Core/Hybrid "EXTERNAL" Network Card

Some orbiters (eg. my laptop) connect to the core using the wifi connection provided by the WRT54GL. This connection is on the "EXTERNAL" network card which has a firewall that is turned on by default. Since the core is behind the OpenWrt firewall, I disabled the core's firewall by checking the firewall disabled box at web admin page->Advanced->Network->Firewall Rules.

Orbiters

Windows XP Laptop Orbiter

My main computer is a laptop with a wifi connection that connects to my router/firewall which is on the same subnet as the core/hybrid's "EXTERNAL" network card. I followed the setup instructions here to setup my laptop as an orbiter. Note that I disabled the firewall on the core to get this to work. See the networking section for details.

TV

A 42" wall-mounted LCD seemed like the right thing for my condominium's living room. The Video showed a Sharp Aquos LC-26D6U in the bedroom. Sharp seems to have good RS-232 control support -- as long as the control port is actually there.

I settled on the Sharp Aquos LCD LC42D64U because it met the following criteria:

  • Has RS-232 control.
  • Very close to the TV used in the Video.
  • Countless positive reviews, only a few reported issues.
  • 1080p
  • Got it for a decent price ($1499) and in my neighborhood. No shipping, brokerage, or duty.

Glue

There were a variety of miscellaneous items I ended up needing to put this system together.

Component Model each Notes
Wall Mount for Sharp LC42D64U Ergotron WM Low Profile Wall Mount P/N 60-578-003 $89.00 costco.ca Item # 115242
Null Modem Cable Generic Null Modem Cable DB9 Female to DB9 Female 6FT $4.50 2 of these to control the TV and receiver
HDMI-DVD cable Generic HDMI-DVI/D M/M HDMI to DVI-D (Dual Link) 10FT Cable - M/M (19 Pins) / (24 PINS+1) $30.00 to connect the TV
infrared transceiver USB UIRT $50 + $8 S&H to use IR remotes and control AV gear