More on the MPC-L

The laptop-style PSU has an output of 12V pulling up to 3.3A, which suggests it could be powered from an in-car charger socket, making it ideal for an in-car entertainment system. In operation the unit is virtually silent. You can hear intense hard disk activity and there’s a slight electronic “zing” from the device, but to all intents and purposes it’s silent.

The first time I powered it on, a white screen appeared and stayed there. No sign of HDD activity, or indeed any other sort of activity. After a power cycle, I saw a familiar BIOS POST screen, followed by GRUB and the Xubuntu 7.04 splash screen. Booting was not very fast, about 90 seconds to the login screen with a further 20 seconds to the fully loaded Xubuntu desktop.

I logged in as the default non-root user. There was a volume entitled “888M Volume” on the desktop which I was unable to access via the icon. This leads me to wonder whether people are expected to use the root account by default as Windows users tend to do with the Administrator account. Alongside Firefox was Opera 9.21. Rather weirdly, these were the only two applications given their own shortcut on the taskbar. It seems odd to include two web browsers anyway, but to give both equally high profile could lead to confusion. In the trash can was a shortcut to Opera, originally in /home/david/Desktop/. Presumably David was the guy who made the image up for these units. There was also a group in /etc/group called “david”. The output of lspci and /proc/cpuinfo is:
00:01.0 Host bridge: National Semiconductor Corporation Geode GX2 Host Bridge (rev 21)
00:01.1 VGA compatible controller: National Semiconductor Corporation Geode GX2 Graphics Processor
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:0e.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 61)
00:0e.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 61)
00:0e.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 63)
00:0f.0 ISA bridge: National Semiconductor Corporation CS5535 ISA bridge (rev 13)
00:0f.2 IDE interface: National Semiconductor Corporation CS5535 IDE
00:0f.3 Multimedia audio controller: National Semiconductor Corporation CS5535 Audio
00:0f.4 USB Controller: National Semiconductor Corporation CS5535 USB (rev 06)
00:0f.5 USB Controller: National Semiconductor Corporation CS5535 USB (rev 06)

processor : 0
vendor_id : Geode by NSC
cpu family : 5
model : 5
model name : Geode(TM) Integrated Processor by National Semi
stepping : 2
cpu MHz : 398.450
cache size : 32 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu de pse tsc msr cx8 pge cmov mmx mmxext 3dnowext 3dnow
bogomips : 798.74
clflush size : 32

I had connected my unit to my LCD TV, capable of running at 1920 x 1080. The onboard graphics card automatically configured the display to run at 1280×1024 which is pretty good. The screen configuration dialogue offered VGA, SVGA and XGA resolutions. There were three small black rectangles across the top of the screen which disappeared when I moved the mouse over them, but I’m not sure if this is a fault with the drivers, desktop environment, graphics card or panel.

main, restricted, universe and multiverse repositories were all enabled. There were 136 updates to be applied to the new system. It would have been nice if all available updates had been applied as part of the build process. The 80GB HDD was partitioned in to two ext3 ~35GB partitions, one mounted as root and 5% used, the other mounted at /scratch and essentially empty. A slightly weird mounting system it has to be said, especially as the default non-root user didn’t have permissions to write to /scratch. It would have made more sense to make the second partition /home where users might make use of the storage, rather than /scratch which many people may not find and work out how to use it to store data on.

It was about this point that I worked out the reason for the mysterious “888M Volume” icon. There was a swap partition on the hard disk, but when I looked at the output of top, it showed no swap enabled. Running “swapon -a” returned an error and I needed to run “mkswap” on the partition before it registered as swap. So it looks like something in the imaging process didn’t set up the swap partition properly. It wasn’t getting enabled but was getting detected by HAL/dbus and showing up as a volume on the desktop. Weird.

Then I rebooted and it kernel paniced. So I tried with the old kernel, that paniced. I tried with the “noacpi” option suggested by Alan and it still paniced. So I’ve broken it within one evening of playing with it. Eventually, I worked out that the incantation needed to be “acpi=off”, after which I was back in the game.

I then tried to play back an OGG Theora file, to test the unit’s suitability as a media front-end. The default media player is XMMS which doesn’t play Theora files. So I installed Xine and although the internal speaker played back the soundtrack to the video for a few seconds, the picture was green and purple and just plain not right. It did persevere with attempting playback but I put it out of its misery once I was able.

The second 35GB seemed like a useful place to install other operating systems whilst leaving the default installation intact. The onboard NIC doesn’t support PXE booting, so the options really were for a USB CD-ROM drive (which I don’t have) or a USB flash stick thing. Fortunately I do have one of those. 🙂 There was even a very useful official HOW-TO on getting the USB stick set up correctly. The USB stick had to be in one of the rear USB sockets, not the ones on the front. There were at least three different installations I want to try on it. Xubuntu Hardy, Ubuntu Hardy (GNOME) and Ubuntu Hardy Server. My successes or otherwise will form another post. 🙂

Be Sociable, Share!
    Pin It

    11 Responses to More on the MPC-L

    1. […] wont repeat what Tony said in his two blog posts, but try to add to them. Read his […]

    2. Andy S-C says:

      To make sure you get the no acpi settings automatically set each time there’s a kernel update, add
      “pnpbios=off acpi=off” to the
      # kopt=root=…. stanza in /boot/grub/menu.lst
      so it looks something like:
      # kopt=root=UUID=8d18d78d-5eb0-469f-b9ca-77e03b43db2c ro pnpbios=off acpi=off
      (note the “# ” at the start has to stay, counter-intuitively to we perl hackers!)

      Then sudo update-grub

      This automatically adds those things to each new kernel image that gets added to the boot list, so you won’t have to worry about kernel panics when you update.

    3. Andy S-C says:

      BTW, on Viglen’s product page for the MPC-L,

      it mentions some optimisations they’ve done to Ubuntu to optimise it for the MPC…

      A daemon monitors applications that users run, it is through the analysis of this data, the daemon predicts what applications users might run, and fetches those binaries and their dependencies into memory for faster startup times.

      I asked Viglen what these magical daemons are, and they replied:

      prelink – (ELF prelinking utility to speed up dynamic linking)
      preload – (adaptive readahead daemon)

      So now we know 🙂

    4. Andy S-C says:

      w00t! Viglen listened to my comments… they’ve fixed the swap partition problem on their build, added the kopt stuff to menu.lst (see comment 2 above), and said:

      “It could also be worth mentioning to the customer that we use the pci=noacpi argument instead of acpi=off (this allows the systems to shutdown gracefully, rather than the immediate shutdown which occurs when you pass the acpi=off flag and press the power off button).”

      So the kopt thing should say:
      # kopt=root=UUID=8d18d78d-5eb0-469f-b9ca-77e03b43db2c ro pnpbios=off pci=noacpi

      (haven’t tried this yet, but something better than the instant dead stop when you accidentally hit the power button while plugging in a USB cable will be much appreciated!)

    5. Andy S-C says:

      just changed the acpi thing as described above, and did a sudo update-grub…
      much better: when you press the on/off button, it brings up the shutdown menu like when you do ctrl-alt-del on a normal machine. Cool!

    6. Tony says:

      Some helpful tips and tricks there. Doesn’t seem to solve the “hang on reboot” issue though sadly.

    7. Andy S-C says:

      I’ve posted the notes I’ve been making whilst taming the MPC…

      I hope folks find them useful!

    8. Richard Appleby says:

      I’ve “upgraded” mine to run Ubuntu 8.04 Server (Hardy); if Viglen are prepared to keep the price where it was for the special offer then this has the potential to become a most worthy successor to the NSLU2 for hobbyists like us.

      Incidentally, installing from CD was not quite “by the book”, so I’ve documented how to get it working on my website here:

    9. Alistair says:

      This unit apparently does support PXE booting;
      press shift+F10 at the boot splash screen to choose boot option.
      I don’t know how to setup the source data for PXE, but the MPC was looking for it.
      Viglen have changed the name to “MPC-Contender” & they have some small downloads available at
      Viglen have also fixed the HDD image-it now has two partitions: hda1 79G EXT3 & hda2 1G swap (approx.)
      The MPC is a bit slow, but the basement was eerily silent while browsing the web.

    10. I upgraded from Ubuntu Server 8.04 (Hardy) to 9.04 (Jaunty) today. The process wasn’t too bad, with only one hiccough. The intermediate upgrade to Intrepid worked, but the Intrepid 386 kernel seems to lack a working driver for the IDE chipset in the Viglen, which resulted in a kernel panic very early in the boot process. By booting into the upgraded (Intrepid) system using the original Hardy kernel, you can then do an upgrade to 9.04 (Jaunty), where the kernel appears to work just fine. Hope that helps someone else.

    11. Lee says:

      Is anyone else seeing major drift of their MPCs real time clock?
      Mine’s losing anything up to 10 seconds a day…
      I’ve had to put a cron job in to keep it in line.