S h o r t S t o r i e s

// Tales from software development

Archive for March 2009

SqueezeCenter on Ubuntu 8.10 Desktop on Virtual Server

leave a comment »

Following on from my post on my problems with SqueezeCenter running on Windows Server 2003, I installed Ubuntu 8.10 Desktop on a Microsoft Virtual PC 2004 virtual machine to get a feel for it while waiting for my new Tranquil T7 hardware to arrive.

I’ve heard that Ubuntu 8.10 installs quickly and cleanly but that’s definitely not the case with a Virtual PC 2004 virtual machine. Judging by the number of posts that I found on the problems of installing on a VPC 2004 VM, it’s a well known problem area. It seems to come down to two basic problems – the Ubuntu installer expects to be able to run a ┬ávideo driver in 24-bit depth and doesn’t recognise a PS/2-type mouse. A VPC 2004 VM emulates 16-bit graphics hardware and a PS/2 mouse. Typical ­čśë

It’s not that hard to get Ubuntu to boot, you just need to add these options to the kernel line in the GRUB boot definition:

vga=791 noreplace-paravirt i8042.noloop

The 8.10 Live CD allows you to edit the boot commands and add these options. Once you’ce installed Ubuntu you can edit the GRUB boot menu at /boot/grub/menu.lst and add the options. Ubuntu 8.10 disables the root user by default so you should invoke your preferred editor using sudo or gksudo, e.g. open a terminal window and run the command: gksudo gedit /boot/grub/menu.lst.

It took a few hours for Ubuntu to install. It’s fairly common that installing an operating system is very slow with Virtual PC and Virtual Server. Presumably this is due to the amount of disk I/O activity.

I followed the instructions on the SlimDevices wiki to install the debian distribution of SqueezeCenter. It all seemed slick and straightfoward. 

I hadn’t intended to actually run SqueezeCenter on Ubuntu on a VM but as I’d got this far I thought I might as well give it a try. It was a revelation – the SqueezeCenter web UI is more responsive than SqueezeCenter running on Windows Server 2003 on my Tranquil T7. Even running on a VM on an old desktop, SqueezeCenter ran flawlessly on Unbuntu. None of the problems that I’ve been having with SqueezeCenter running under Windows Server 2003 on the Tranquil T7 showed up.

I’m not sure what that says about SqueezeCenter, Windows Server 2003, and Ubuntu and I don’t really care – I’m just happy that SqueezeCenter on Ubuntu looks like a solution to the problems I’ve been having.

Written by Sea Monkey

March 19, 2009 at 8:00 pm

Posted in Environments

Tagged with

Runs on Windows! (Maybe not…)

leave a comment »

Fifteen months ago I bought a Logitech SqueezeBox and a Tranquil T7 PC to run Logitech’s media centre software, SqueezeCenter. I’ve been trying to get the two to work together ever since and, this week, I’ve more or less finally admitted defeat.

The problem is that the SqueezeBox will play music for a while and then just stop for no obvious reason. Sometimes it will play for hours on end before stopping while other times it plays a couple of songs and then stops. But it always stops.

Then there’s the pops and crackles. This is supposed to be an audiophile device and it really shouldn’t do that.

I started off with SqueezeCenter’s predecessor, SlimServer. SlimServer was superceded by SqueezeCenter but I stuck with SlimServer while I tried to determine the source of the problem but eventually upgraded to the latest official release a few months ago. In desperation, I’ve tried installing one of the latest beta releases in the hope that it might provide a solution. So far, this is what I’ve done to identify the problem:

  • Replace my Router/Modem/WiFi Access Point with a later model.
  • Install a dedicated, more powerful, WiFi access point.
  • Move my SqueezeBox so that it has a good line of sight with the WiFi access point. I now get 80% signal strength all the time.
  • Upgrade SlimServer
  • Uninstall SlimServer and install the latest production release of SqueezeCenter. This upgrades the SqueezeBox firmware too.
  • Install the latest RealTek 8169 NIC drivers on the Tranquil T7.
  • Try just about every setting in SqueezeCenter that could be relevant, and a whole load that probably aren’t. For example, it’s running with the highest process priority available.
  • Move the T7 so that it’s next to the SqueezeBox and connect the two using a network cable.
  • Uninstall SqueezeCenter and install the latest beta with another firmware upgrade for the SqueezeBox.
  • Install another version of the latest RealTek 8169 NIC drivers on the T7.
  • Changed the NIC driver’s options – Hardware Flow Control, Offload Tc/Rx Checksum, Enable Jumbo Frames, etc.

I’ve contacted Tranquil support and┬áLogitech support. Tranquil were happy to look into it once I’d provided details of the original order, invoice number, serial number, etc. Logitech were quick to say that they couldn’t help me as soon as I mentioned that I was running Windows Server 2003 on the Tranquil.

SqueezeCenter has an extensive set of debug switches that can be set to determine what’s going on but no readily accessible documentation for the switches or how to interpret the debug output created. After trawling around the SqueezeCenter forums for a few evenings I had a vague idea of which switches to set and tried them. Because I couldn’t find any details on the debug output I’m guessing at what the log shows but it looks like the SqueezeBox is suffering buffer underruns. The network is capable of sustaining traffic of at least an order of magnitude higher than the SqueezeBox needs so if there are buffer underruns then it’s likely to be because of a communication error between the SqueezeBox and SqueezeCenter, or the SqueezeBox isn’t requesting data when it should, or SqueezeCenter is not providing data when requested. I suppose there’s still the possibility of some kind of hardware glitch too except that the network performance tests that can be run from the SqueezeBox didn’t show up any problems.

It had never occurred to me that this could be the problem because surely SqueezeCenter is just a Windows application and if it runs on Windows 2000, XP, and Vista, then why should Server 2003 be an issue ? Interestingly enough, a lot of people run SqueezeCenter on Windows Home Server which is built on a core of Server 2003. Most WHS users seem to be able to run SqueezeCenter without any problems.

I was fairly annoyed about this because I don’t remember Logitech being very specific about which versions of Windows were supported when read the advertising material on the SqueezeBox. I went and checked the current info on their web site and, sure enough, it’s pretty vague in the high level info but it does specify Windows 2000, XP, and Vista, in the specifications.

I do understand that a manufacturer like Logitech cannot realistically support every version of Windows ever released but it’s not like I’m trying to run SqueezeCenter on Windows 3.1 is it ? Surely it’s not unreasonable to expect media server software to run on a current or one level back version of WIndows Server ?

As an experiment, I installed SqueezeCenter on a laptop running Windows XP and hooked it up to the SqueezeBox. It played music for over 48 hours without a single glitch – no stops, no pops and crackles. Unfortunately, this doesn’t prove that it’s a Windows issue. If it’s a problem with the T7’s NIC or its driver on then this would also explain why running SqueezeCenter on the laptop was successful.

I’m still not convinced that the problem is with the operating system but I can’t really ask Tranquil to pursue a possible issue with the hardware in the T7 because Logitech have said that they can’t guarantee that the issue isn’t with SqueezeCenter running on an unsupported version of Windows.

So, I have several hundred pounds invested in a supposedly audiophile solution that doesn’t work, not to mention several hundred hours of ripping my music to hard disk.

My options appear to be:

  • Give up and go back to CDs.
  • Wipe the T7 and install Windows XP on it. This might solve the problem, or it might not.
  • Give up on the T7 and try different hardware.

I feel like I’ve had enough of trying to get music and computers to work together and the first option is looking very attractive. Unfortunately, it’s just not practical. My CD collection hit the 700 discs limit of my CD storage unit about 10 years ago. Since then, new CDs have been accumulating in piles and boxes around the house. I’ve bought the same CD twice on more than one occasion because I couldn’t find the original copy I had.

I’ve decided on the last option and have ordered another T7. This might seem illogical if I suspect the T7 hardware but the latest T7 is based around an Intel motherboard and an Intel Atom processor rather than the Jetway motherboard and VIA processor in my T7. But, to be sure, I won’t be running Windows Server 2003 on it – after all, Logitech says it’s not supported ­čśë

Ubuntu 8.10 is looking like a good option, and Logitech supports SqueezeCenter on it.

Written by Sea Monkey

March 11, 2009 at 8:00 pm

Posted in General

Tagged with