Freeing Your Music Player with Rock
Musical Freedom
Turn your music player into open hardware with Rockbox's free firmware.
If you have a large music collection or care about sound quality, just any mobile computing device won't do. However, while most music players support free-licensed formats like.flac, and a few even support.ogg, you won't find any that are sold with free-licensed firmware. That's where Rockbox [1]comes in. Rockbox is a project that develops free firmware, as well as an installer for adding the firmware to your music player. The process is the equivalent of rooting your phone, giving you complete control over a device. In effect, it creates a piece of open hardware where none existed before. Rockbox's small team of developers has been at work since 2001. Today, the project fully supports several dozen different models of music players, including Apple, Samsung, and SanDisk. Another dozen models are partially supported, and several others are in early development. However, if a music player is not listed as being supported on the project site's home page, check the forums. Sometimes, a model may be a repackaging of an earlier device. For example, while the SanDisk Clip Sport is not listed as supported, it turns out to be merely a rebranded SanDisk Clip Zip. As with any effort to replace firmware, the possibility exists that you could brick a device by installing Rockbox on it. The chance is slim, since Rockbox generally works by bypassing rather replacing a device's bootloader, and the installer includes an uninstaller that (at least in my limited experience) works perfectly well. All the same, disabling the music player remains a possibility. To avoid complete disasters, make sure that you have copies of all the files on a music player before you attempt to install Rockbox, and remember that you install at your own risk.
Downloading and Installing Rockbox
To install Rockbox, download the stable version for your music player model to your home directory. Uncompress the archived file, and the Rockbox utility is ready to use. You can also install manually using your music player's online manual [2], but, for most cases, the Rockbox utility is easier and quicker to use (Figure 1).
However, the utility does have a few quirks. To start with, auto-detection does not work unless the music player is connected to your computer after the utility is opened. If the player is still not detected, you need to add its mount point and model manually. Once you have configured the installation, at a minimum you must install the bootloader and firmware to the device. However, before installation starts, you have the option to install extra fonts, themes, and games. Some of these extras require additional files, which should be copied to the same directory as the Rockbox utility. Press the Install button and the Prerequisite dialog opens, warning that you also need to download the firmware for your device – a detail I would have preferred to know earlier, so I wouldn't have to interrupt the installation to find the firmware. The dialog does not tell you where to place the firmware; instead, you have enter the path for it.
Overall, the Rockbox utility can best be described as basic. It does not do things it could easily do, such as download the extras selected or the required firmware. However, it is not difficult to use so much as annoying in little ways.
The Interface
Music players – especially ones that fit in your palm with room to spare do not have elaborate interfaces. The Rockbox interface is no exception and is generally an acceptable substitute for the one that shipped with my SanDisk Clip Sport, although with a few omissions and some sloppy menu structures. Like the original, the Rockbox interface is divided into seven sections: Radio, Music, Books, Sports, [UCC:x10-l-bold-italic]Folder[/UCC] , [UCC:x10-l-bold-italic]Card[/UCC] , and [UCC:x10-l-bold-italic]Settings[/UCC] , each with its own subdirectories. For example, Books is divided into Audiobooks and Podcasts, while Sports includes both a timer and stopwatch. The main purpose of the Card section is apparently to have a top-level menu item for external microSD cards, since a separate entry for the external card is available under Folder. All these top-level items can be turned off under Settings | Customize, which can eliminate endless scrolling through options you have no intention of using. Under Music, users can opt for Shuffle, to play songs in what Rockbox claims is a truly random order, unlike most music players, or to create playlists. However, unlike some interfaces I have seen, in the case of the SanDisk Clip Sport, Rockbox does not allow you to rank songs or to select by genre or any other meta fields associated with a song file. Instead, files can only be selected by artist, album, or songs, all of which are displayed in only fourteen characters. Neither can album art be displayed. How songs play is controlled generally under Settings | System Settings and specifically in the menu for each song. In both places, Equalizer and Replay Gain are available for tweaking songs. Under Settings | Music Options, you can also toggle Shuffle and Repeat. My subjective impression is that the Rockbox firmware loads and refreshes faster than the original on my SanDisk Clip Sport. However, on the negative side, where the original does not start to distort sound until the seventh of eighth sound levels, with Rockbox, the sound starts to distort at the sixth level, reducing the options to something that makes the Rockbox firmware less than ideal on a crowded bus or busy street. Another limitation is that files on a microSD card are not displayed on the Rockbox interface. Instead, you have to go through the Card section. This arrangement is generally acceptable, unless you want to play songs in track order, in which case file names need to be prefaced by the track number. None of these shortcomings are crippling. However, for some, at least a few of the limitations might be unacceptable. But then, I suppose that the main point is to have free firmware, not a full-featured, logical interface.
Backup and Uninstalling
The Rockbox utility can also be used to update the firmware on a device, or to back up the files in the installation directory. You can also uninstall the firmware in one of two ways: by uninstalling the Rockbox bootloader, which is used to bypass the original firmware, or by a complete removal of all aspects of the firmware, including the extras (Figure 3). Unfortunately, as happened in my experiments, removing the bootloader may not always be an option for some devices. Fortunately, uninstalling all of the Rockbox firmware is a smoother operation, although, as the dialog warns, you do have to remove the bootloader from the music player manually; it will be the only .bin
file in the player's top-level interface. If something goes wrong, you can always reinstall the Rockbox firmware so that the player remains usable.
At the end of my experiments, I remain intrigued by Rockbox, although mildly disappointed. As a free software user, I am no longer accustomed to situations in which using free software means awkwardness and the loss of some features, even if the inconvenience is mild. I could use Rockbox in its present state, but, practically speaking, I am not that eager to do so. Still, I will keep an eye on Rockbox and see how its firmware improves over the next few years. I see that the project is starting to define what is necessary to port the FiiO X1 [3], my music player when I'm on the road. When that development produces a stable release, I will be curious to see how well it is implemented.
Infos
- Rockbox: https://www.rockbox.org/
- online manual: https://www.rockbox.org/manual.shtml
- port the FiiO X1: http://forums.rockbox.org/index.php?topic=51047.30
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.
-
XZ Gets the All-Clear
The back door xz vulnerability has been officially reverted for Fedora 40 and versions 38 and 39 were never affected.
-
Canonical Collaborates with Qualcomm on New Venture
This new joint effort is geared toward bringing Ubuntu and Ubuntu Core to Qualcomm-powered devices.
-
Kodi 21.0 Open-Source Entertainment Hub Released
After a year of development, the award-winning Kodi cross-platform, media center software is now available with many new additions and improvements.
-
Linux Usage Increases in Two Key Areas
If market share is your thing, you'll be happy to know that Linux is on the rise in two areas that, if they keep climbing, could have serious meaning for Linux's future.
-
Vulnerability Discovered in xz Libraries
An urgent alert for Fedora 40 has been posted and users should pay attention.
-
Canonical Bumps LTS Support to 12 years
If you're worried that your Ubuntu LTS release won't be supported long enough to last, Canonical has a surprise for you in the form of 12 years of security coverage.
-
Fedora 40 Beta Released Soon
With the official release of Fedora 40 coming in April, it's almost time to download the beta and see what's new.
-
New Pentesting Distribution to Compete with Kali Linux
SnoopGod is now available for your testing needs
-
Juno Computers Launches Another Linux Laptop
If you're looking for a powerhouse laptop that runs Ubuntu, the Juno Computers Neptune 17 v6 should be on your radar.