Squeezebox Server on a budget

Looking for an inexpensive, quiet and low-power Squeezebox Server?

The O2 Joggler is a rebadged version of a OpenPeak OpenFrame 7″ touch-screen device. It has an Intel Atom Z520 CPU running at 1.3Ghz, 512Mb of RAM and 1GB of internal flash storage. You can also run it as a fully functioning Squeezebox Server!

Here’s how:

  • First check that your Joggler is running the latest 26635.S3 (Jun 25 2010) software, if it’s not then update
  • You will need telnet access, so download this Joggler telnet hack
  • Unpack the Zip archive to the root of a USB stick formatted in FAT16 or FAT32
  • Unplug the Joggler, insert the USB stick, then power on again and wait!
  • When the Joggler reboots it will have telnet enabled 🙂
  • Telnet to the IP address of your Joggler and login with the username ‘letmein’
  • Download Logitech’s Squeezebox Server v7.5.1 and save to your PC desktop

Now use these commands to download and install flipflip’s Squeezebox server wrapper:

cd /media
mkdir /media/ssods4 /opt
ln -s /media/ssods4 /opt/ssods4
cd /opt/ssods4
wget http://oinkzwurgl.org/downloads/ssods/ssods-4.9.1-i686.tar.gz
tar -xzvpf ssods-4.9.1-i686.tar.gz
echo "ssods:*:1000:1000:ssods:/opt/ssods4:" >> /etc/passwd
echo "ssods:*:1000:" >> /etc/group
LC_ALL= /opt/ssods4/etc/init.d/rc.ssods start

Assuming all the above has gone ok, you can now open a browser and finish the Squeezebox server installation:

  • Open a web browser on your PC and enter the URL of your Joggler, e.g. http://192.168.1.65:9099/
  • Follow the instructions in SSOXX to upload the squeezeboxserver-7.5.1.tgz file you downloaded earlier and then install the SqueezeCenter tar ball
  • When it’s finished you should see Success messages like the screenshot below
  • Now just click on ‘Start SqueezeboxServer’ to fire it up

If you are going to use your Joggler as a dedicated Squeezebox Server then you might want to make the following tweaks to ensure that it all starts up automatically and unnecessary processes are disabled:

  • Edit  /etc/init.d/boot.d/S99boot.hacks and add the line ‘LC_ALL= /opt/ssods4/etc/init.d/rc.ssods start’ in the starthacks() function, just after the telnetd line should be fine (my S99boot.hacks additions are at the end of this post)
  • Go into the SSOXX settings tab and make sure that autostart is enabled
  • Stop the X11 server and O2 GUI from loading by commenting out the following two lines from the end of /etc/init.d/rcS
cd /openpeak/tango
./run &
  • Disable automatic software updating to ensure that all your good work is not undone in the future:
echo "127.0.0.1 localhost applog.openpeak.net o2.openpeak.com o2.openpeak.co.uk" > /etc/hosts

I want to keep my Joggler in a cupboard and forget all about it, so I have no use for the display.
To save power I switch the screen off entirely, to do this I use Starter’s driver patches:

cd /media
wget http://get.intanet.com/dl/brightness.sh
wget http://get.intanet.com/dl/bp
./brightness.sh allowscreenoff 1
./brightness.sh negativevalues 1

Add the following line to /etc/init.d/boot.d/S99boot.hacks:

/bin/echo "-3">/proc/blctrl"

If you want to mount a Samba/CIFS share (like a NAS mount) you will need to download the cifs.ko kernel module and add that to the startup file.

The starthacks() function in my /etc/init.d/boot.d/S99boot.hacks startup file now looks like this:

starthacks()
{
  # enable telnet
  /usr/sbin/telnetd
  # load CIFS kernel module
  /sbin/insmod /media/cifs.ko
  /bin/sleep 2
  # mount network share
  /bin/mount -t cifs //192.168.1.2/musicshare /mnt/music -o user=music,password=secret
  /bin/sleep 2
  # disable screen
  /bin/echo "-3">/proc/blctrl
  # start SSOXX and Squeezebox Server
  LC_ALL= /opt/ssods4/etc/init.d/rc.ssods start
}

Reboot your Joggler for the display driver patches to load.

Advertisements

8 thoughts on “Squeezebox Server on a budget

  1. Amazing post, highly instructive and, as per it´s instructions, I could install the ssods4 in my Jogglers. My problem is that in my Jogglers there is no s99boot.hacks file, so , how /where do I make a file that send the LC_ALL= /opt/ssods4/etc/init.d/rc.ssods start instructions ?

    Any info will be very apreciated.

    vasco

    • The S99boot.hacks script is installed by the Joggler telnet hack.
      How did you gain telnet access to your Joggler?

      This is what it contains:

      
      #!/bin/sh
      
      starthacks()
      {
        # enable telnet
        /usr/sbin/telnetd
      
        # add your hacks here :)
      }
      
      stophacks()
      {
        killall telnetd
      }
      
      case "$1" in
          start)
            starthacks
            ;;
      
          stop)
            stophacks
            ;;
      
          try-restart)
            $0 stop && $0 start
            ;;
      
          restart)
            stophacks
            starthacks
            ;;
      
          status)
            exit 2
            ;;
      
          *)
            echo "Usage: ${0##*/} {start|stop|status|try-restart|restart}"
            exit 1
            ;;
      esac
      exit 0
      
      
  2. Hi there,

    Great post, nice and straight forward.

    Tried updating to latest Squeezebox Server, 7.6.1

    Installed ok, but refuses to start, anyone else tried this ?

    Thanks in advance,

    Andrew.

  3. Now I can download as well, it might be a temp problem.
    But I can use it on my SB because it runs now 2.6.26 kernel version.
    Do you have an idea where can i get cifs.ko for 2.6.26 kerenl version, or how can I build myself ?

    thx

  4. Hi,

    Looks great – but one question….
    I don’t have my jogggler in a cupboard – once squeezeserver is installed and set to run on startup, will my Joggler still open up as the O2 original software interface? I have the Birdslikewires Squeezeplay running on it and want to keep that if possible to play the music.

    Cheers

    • Yes David, if you do everything apart from the extra hacks which switch the display off then the Joggler will operate as normal. It might slow down a bit though since the CPU is doing a lot more.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s