Latest Release: 12th February 2014 – CHANGELOG
Download SqueezePlay OS v2.06 for External Storage – (151MB) MD5
Download SqueezePlay OS v2.06 for OpenFrame 1 Internal Memory – (151MB) MD5
Download SqueezePlay OS v2.06 for OpenFrame 2 Internal Memory – (152MB) MD5
- Which version should I download?
- - If you want to run this from a USB storage device, download the External Storage image.
- - If you want to run this from internal memory and have an O2 Joggler (or similar) download OpenFrame 1 Internal Memory
- - If you want to run this from internal memory and have an OpenFrame 2 (front facing speakers) download OpenFrame 2 Internal Memory
I’d noticed that some people on the Joggler Forums were making more use of SqueezePlay as a replacement for the native operating system, loading it in preference to the Tango interface. I’d also toyed with the idea of running a few background services on a Joggler, but these were all things that were going to be tricky on a system as specialised as the OpenPeak one. So, I decided to make my own Linux distribution based on Ubuntu.
What Is It?
SqueezePlay OS, as I’ve been inventively calling it, is a small Ubuntu installation built using debootstrap and designed to run SqueezePlay for Joggler. You can download it, flash it to a USB stick, plug it into your Joggler and be up and running in no time. It’s also designed to look neat, with no console output on boot (although verbose output is easy to turn back on) dropping you straight into the SqueezePlay user interface.
After the first version was released it was clear that people wanted to install it onto the internal flash memory of their Jogglers, completely replacing the OpenPeak system. It’s taken a bit of work, but as you can see from the download box there’s now a specialised copy of SqueezePlay OS that can be written to the Joggler’s internal storage using the latest Reflashing Tool.
It’s true that there are a couple of other ways of running SqueezePlay; either on a full desktop installation for the Joggler, or on the native operating system. I decided to make this to keep things as small, quick and stable and possible. There are no extraneous programs waiting to pop up and distract you, and no Tango user interface to restart and push SqueezePlay into the background. The system will never bug you for attention – it’s just SqueezePlay and you.
You can run SqueezePlay OS either from an external memory stick, or from the Joggler’s internal storage.
There are benefits to both methods; if you run Logitech Media Server on a dedicated machine somewhere on your network, internal storage may be the preferred option. However, if you wish to store music on a device attached to your Joggler, want to swap back to the default operating system easily, or fancy installing additional software onto SqueezePlay OS, then a USB device may be a better option.
- Important: Please note that I always compile kernels for the Joggler with an 80°C thermal trip point. If you are unhappy with this, you need to add thermal.psv=70 to the
grub.cfg file before booting.
- Also Important: If you install to internal memory and then install Logitech Media Server as well, space gets very tight indeed. In fact, if you have a large music collection, you may even find that LMS can’t save it’s databases. If you use LMS, I don’t recommend installing it to the internal memory unless you are using an OpenFrame 2.
Quick Installation Instructions
If installing to a USB device, the quick version is:
- Download SqueezePlay OS from the link above and write it to a USB device of at least 1GB capacity.
- Power off your Joggler and insert the USB stick into the side socket.
- Power on your Joggler.
If you want to install to internal memory, follow the instructions on the Reflashing Tool page for writing an alternative OS image file and use the ‘SqueezePlay OS for Internal Memory’ image. Please don’t use the standard image on the internal memory (or vice versa) as you will definitely run into problems.
If your Joggler fails to boot, try another USB device.
Full Installation Instructions
Download SqueezePlay OS from the link above and follow the instructions for your operating system.
Open a Terminal window and run
sudo fdisk -l to find your device name. Then:
sudo umount /dev/sdX*
gzip -dc sqpos103.img.gz | sudo dd of=/dev/sdX bs=1M
Where sdX is your USB device.
Mac OS X
Open a Terminal window and run
sudo diskutil list to find your device name. Then:
sudo umount -f /dev/diskX*
gzip -dc sqpos103.img.gz | sudo dd of=/dev/rdiskX bs=1m
Where diskX is your USB device.
Download Win32DiskImager, then unpack the .img.gz file using a tool like 7-zip. Run
W32DiskImager.exe and select the unpacked .img file. Choose the drive that corresponds to your USB stick and use ‘Write’ to write the image.
Generally, using SqueezePlay OS is identical to using any other installation of SqueezePlay for Joggler. However, there are a few more functions and options that are not present in other versions.
Once booted you will be walked through the setup process for SqueezePlay. Simply choose your language and follow the on-screen prompts.
When the Network configuration screen appears, there are a few choices.
If you’re using a wired connection you should simply be able to ‘Accept and Continue’. If you’re using wireless, choose the wireless option, enter your network name and WPA password, then hit ‘Apply Changes and Reboot’. When the system comes back up, all should be well.
Should the message say that no network address has been assigned, hit the Back arrow and wait for a few moments. It is likely that the system is waiting for a response from your DHCP server. If this message persists, check your network connection and make sure your router is set up to distribute addresses by DHCP (most are by default).
When you’re happy with the details displayed at the top of the Network screen, choose ‘Accept and Continue’ and choose the mysqueezeplay.com service or your local Logitech Media Server.
Should you wish to set a fixed IP address, do so either on your router (many have options for providing the same address repeatedly to a device) or by editing the
/etc/network/interfaces file via SSH. There are numerous tutorials available online which will describe the correct settings for your network.
For best results, it is recommended to run Logitech Media Server on a computer on your network, which will serve content to your device.
It is also possible to use SqueezePlay with the mysqueezebox.com online service. Simply choose this option from the list and configure your device using the web interface. Please note that it may take a couple of attempts before the service responds to your device, for reasons that have never been terribly clear. Any suggestions on how to improve this connection would be appreciated.
Thanks to Heiko Steinwender, there is now an applet for configuring the time zone of your device. Simply head to Settings > Advanced > Time Zone to select your location.
Once configuration is complete you will be taken to the main interface screen. An option to return to the setup process will be present until the system is rebooted, should any of your choices need revising.
If you need to reset your choices after this time, just using the Settings > Registration and Settings option.
If you head through the menus to Settings > Advanced > Additional Features, you will find a few added extras.
Settings > Advanced > Additional Features > AirPlay
Support for AirPlay audio is now built-in to SqueezePlay OS using a piece of software called shairport. When your device boots, you should immediately be able to connect to it using any AirPlay-compatible product.
By default the name of your device will be ‘SqueezePlay’. If you have more than one OpenFrame device running SqueezePlay OS make sure you give it an appropriate name, otherwise things will get confusing quickly! To do this, head to Settings > Squeezebox Name, enter a new name and then relaunch SqueezePlay from Quit > Relaunch.
Logitech Media Server
Settings > Advanced > Additional Features > Logitech Media Server
This option will automatically install Logitech Media Server on SqueezePlay OS without messing around on the command line. Simply press the ‘enable’ button and wait while LMS is downloaded and installed for you. Then visit the address shown on the installation screen with your browser to begin configuring server options, such as the location of your music.
Network Mount Point
Settings > Advanced > Additional Features > Network Mount Point
Here you can specify a network mount point, which is a handy thing to be able to do if you run Logitech Media Server on your Joggler, but store your media files on some other system (such as a server or NAS device). You have a choice of NFS or SMB protocols, where SMB would be the option to choose if you’re using Windows File Sharing. However, if you possibly can, use NFS. It has much lower CPU overheads than SMB and many NAS devices support it just fine.
If you use SMB, you must supply a valid username and password for the share (guest access won’t work).
Your shared area will be attached to
/srv/media, so point your LMS installation to the contents of that directory. Hitting the ‘Disable’ option will unmount the share and remove the configuration (including any usernames or passwords you entered).
Settings > Advanced > Additional Features > Secure Shell
The SSH server software is enabled by default, allowing you to connect to your Joggler over a secure terminal connection. Once you’re in, you can make advanced configuration changes – and get your Joggler to do pretty much anything you might want.
The username and password for this are:
- Username: joggler
- Password: joggler
You should change your password using
sudo passwd joggler from the command line.
Things never go perfectly smoothly, so here are a few suggestions.
“It says ‘No network address has been assigned’ on the Network screen.”
If you know that everything on your network is okay, then it is likely that you’ve just whizzed through the preceding screens before the Joggler was given an IP address by your DHCP server. If you press the Back arrow button and try again, the applet will recheck your network configuration.
If you still get no IP address, make sure that your DHCP sever is functioning correctly and that you have the correct interface selected. If you’ve chosen the wireless option, double-check your WPA passphrase and network name. That name also needs to be broadcast, not hidden.
“I use WEP, not WPA for my wireless network. Will it work?”
Nope. WPA only, I’m afraid – although it is configurable if you get on the command line; the Ubuntu Forums may be of help. And you know your WEP passphrase? It can probably be cracked in under 10 seconds, so please consider switching to WPA.
“I want to tinker. How do I access the command line?”
The Secure Shell service is running by default, simply SSH in using your favourite terminal app. Both the username and password are ‘joggler’. Happy tinkering!
“I like verbose boot. How do I get that back?”
/boot/boot.nsh, changing any instances of grubq to grub. Then edit
/boot/grub.cfg and delete the word ‘splash’ and choose an appropriate ‘loglevel’.
- Thanks to Jools Wills (BuZz) and many others for the kernel patches and advice that have made SqueezePlay OS possible.