Running SqueezeCenter on a Buffalo LinkStation Live, part 1

LinkStation Live

LinkStation Live

I’ve been running SlimServer/ SqueezeCenter for a number of years now on an old Pentium 4 box running Linux. Recently, I decided to simplify things and reduce my carbon footprint by putting SqueezeCenter on a Buffalo LinkStation Live V2. This two part tutorial explains in some detail the steps taken to achieve this goal.

It should be noted that this isn’t for the faint-hearted because you can “brick” (that is, render your LinkStation useless) if you do the wrong thing. However, with the steps outlined below you should be able to revive your LinkStation since the original bootloader isn’t replaced with a non-standard firmware. Nonetheless, it is your decision to try this and your responsibility if things don’t go according to plan. Before you proceed, do your research thoroughly by reading everything here and visiting the reference sites listed.

In summary, the following needs to be done to get SqueezeCenter working on you LinkStation:

  1. Update the stock firmware to the most recent version;
  2. Unlock the stock firmware using a Java utility;
  3. Set-up ssh, optional files and fixes;
  4. Install Optware for the ARM9 processor, set-up ssh and add some start-up scripts;
  5. Install SqueezeCenter.

It’s worth noting that performance is not as good as that of a PC, which isn’t really surprising given the processor and memory of the LinkStation, but it is satisfactory with some 500 or so albums (around 6,000) songs. Control through a Squeezebox is responsive with only a brief delay before entering the Music Library, Artists etc. The Web interface is a little slow but quite acceptable (I suspect this has more to do with the SqueezeCenter software that the performance of the LinkStation.)

Update Stock Firmware

What’s required:

  1. PC running Windows XP;
  2. Latest firmware, e.g. HS-DHGL_211_101b.zip. Download this from the Buffalo Support Site and select LinkStation Live™ from the first drop-down menu (Choose a Buffalo Product);
  3. LinkStation Updater (LSUpdater.exe.) This is included with the latest firmware;
  4. Cross-over Ethernet cable.

Once you have items 1 – 4 to hand, you are ready to begin. It’s a really good idea to do this when you’re not going to be interupted and there’s no one in your home using appliances that could trip your electricity supply, e.g. toaster, iron etc.

Step 0. Connect the LinkStation directly to your PC using the cross-over Ethernet cable.

Step 1. Power-on your PC and the Linkstation.

Step 2. Disable the Windows firewall. Go to Start > Run and type:

firewall.cpl

Then click OK. On the General tab select Off. If you’re running Windows Vista you’ll have to work this out for yourself.

Step 3. Turn off your wireless network adaptor and ensure the only active network connection is between your PC and the LinkStation. Change the IP address of you network connection to 192.168.1.10 using the command prompt. Go to Start > Run and type:

cmd.exe

At the command prompt type the following:

> netsh interface ip set address name="Local Area Connection" static 192.168.1.10 255.255.255.0 192.168.1.1 1
> netsh interface ip show config

The last command is issued to confirm the new settings. Note: Don’t close the command prompt as you’ll need it again.

Step 4. Extract the latest firmware to your desktop using your favourite archive utility. You should have a folder on your desktop called hs-dhgl_211_101b or similar. Inside the folder you will have the following files:

hddrootfs.buffalo.updated
initrd.buffalo
linkstation_version.txt
LSUpdater.exe
lsupdater.ini
u-boot.buffalo.updated
uImage.buffalo

Step 5. Double-click on LSUpdater.exe to run the program. After a few seconds, the updater will identify your LinkStation and display model name, host name, workgroup, IP address etc. Next, right-click on the LinkStation Updater icon located in the Windows taskbar and select Debug. In debug mode change the IP address:

  • Check Execute the change as follows;
  • Enter the new IP address 192.168.1.150;
  • Enter the new subnet mask 255.255.255.0;
  • Uncheck Use DHCP Client.

Click OK to close the debug window. Press Find and check your settings are correct!

Step 6. Update the LinkStation. This step will reflash the firmware. Do not power off your PC or LinkStation until this has completed successfully. Doing so will brick your hardware! If you have previously set an admin password you will be prompted to enter this.

Open Stock Firmware

What’s required:

  1. Java. Download this from the Java Web site;
  2. acp_commander by Georg. Download this from NAS Central.

Once you have downloaded items 1 and 2 you are ready to unlock your LinkStation. The following steps are reproduced from NAS Central for convenience and only apply to firmware versions 1.11-1a or newer, i.e. the latest firmware (tested with 2.11-101b.)

Step 7. At the command prompt type the following:

> cd Desktop
> java -jar acp_commander.jar -t 192.168.1.150 -o -addons

You should see the following returned:

 Using random connID VALUE = FB6A7FCF57E6
 Using target: 192.168.1.10/192.168.1.10
 ** NO message **
 ** NO message **

Now you can login to your LinkStation using telnet. However, before proceeding turn on your Windows firewall by reversing Step 2.

Step 8. Connect to the LinkStation by typing the following at the command prompt:

> telnet 192.168.1.150

At the prompt enter root and press return when asked for the password (it’s not set.) You are now using the BASH Linux shell on your LinkStation. The first thing you need to do is set a password:

$ passwd
Changing password for root
Enter the new password (minimum of 5, maximum of 20 characters)
Please use a combination of upper and lower case letters and numbers.
Enter new password:

Enter your new password and press Enter. You will be then prompted with:

Re-enter new password

Re-enter your new password and wait for the confirmation:

Password changed.

The second instalment, Running SqueezeCenter on a Buffalo LinkStation Live, part 2 is available now!

Enter the following (Replacing <IP ADDRESS> with the IP Address of your Linkstation)
    • Dave
    • July 20th, 2009

    Martin

    At last, someone who has successfully setup a SqueezeCenter on a Buffalo LinkStation

    Can you please let me know when the “Running SqueezeCenter on a Buffalo LinkStation Live, part 2 will be available.

    thanks

    Dave

    • It’s nearly finished and I’ve simplified the next steps by writing a simple script that does much of the hard work.

    • flo
    • July 23rd, 2009

    Any news about part 2? I’m really interested because since today I own a squeezebox :)
    Good part 1 -> bookmarked.

    • Ashley Lee
    • August 9th, 2009

    Hi Martin, can this be done on a LS-CHL Linkstation Live? I should have done a bit more research before I purchased, hoping you can help – cos it’s not playing videos on PS3 and I can’t get squeezecenter at the moment either, so it’s good for nothing for me. If I can at least get SqueezeCentre on it that would be a reason to keep it… cheers Fox.

    • Chris
    • January 2nd, 2010

    Happy new year Martin,

    I tried to update the firmware on my livestation, but the debug-mode gives me the error “Cannot change IP address (0xFFFFFFFE)”. I cannot find anything on the web that covers this… My livestation shold be the correct version (HS-DH500GL). Thank you for your answer!

    Chris.

    • This could have occurred because the LinkStation is on a different subnet to your PC or problems with a firewall (the software needs UDP 22936 open.)

      Make sure you’ve disabled any firewall and have a direct connection to the LinkStation using a crossover cable. Alternatively, try setting your PC to 192.168.11.10 and the LinkStation to 192.168.11.150 (which happens to be the default IP.)

      If this doesn’t work for you, you can reset the LinkStation by pressing the reset button on the rear. This will:

      1. Launch a Telnet process (on port 1234.)
      2. Start apservd which opens port (UDP 22936) on your LinkStation. The firmware updater uses this open port to communicate with your LinkStation.
      3. Starts your LinkStation on a static IP: 192.168.11.150.
    • Chris
    • January 6th, 2010

    Hi Martin,

    thank you for your reply. I managed to set a fixed IP address using the browser interface. With the fixed IP address I connected the LS to my laptop with the cross-link cable, updated, everything worked fine!
    I also installed Sqeezecenter using the ipkg package, it works!!!

    Again, thanks a lot,

    Chris.

    • Peter Levinsohn
    • January 6th, 2010

    Martin

    Which version of SqueezeCenter does this install? I have 7.3.3 installed on the LinkStation now but that does not support Apple Lossless and everytime I switch to Internet Radio other than through the LinkStation, the system takes 5 minutes out to reinstall 7.4.1 on the Controller and the SqueezeBox and vice versa when I switch back.

    Really helpful blog. Thanks.

    Peter

    • The most recent version available via ipkg is 7.3.3-1. I’ve not experienced any problems with my Squeezebox2 updating when switching between my music library and Internet radio.

    • Ganesh
    • February 7th, 2010

    Thanks for info. I was able to connect and reset the Link station HS DH500GL as soon as I installed the latest firmware on win XP. You have helped me resolve an issue that was pending for quite some months.

    • Ganesh
    • February 7th, 2010

    Hi,
    I could connect to all the shared drive. Is there a way to reset the administrator password.
    Thx

    • I assume you mean the LinkStation’s admin account not the root account. If so, connect to your LinkStation using ssh and use the passwd command:


      martin@mico:~$ ssh root@saimiri
      root@saimiri's password:
      Last login: Sat Feb 6 14:44:02 2010 from 192.168.1.11
      root@SAIMIRI:~# passwd admin
      Changing password for admin
      Enter the new password (minimum of 5, maximum of 20 characters)
      Please use a combination of upper and lower case letters and numbers.
      Enter new password:
      Re-enter new password:
      Password changed.
      root@SAIMIRI:~#