09-09-2011 09:04 PM - edited 02-12-2012 08:42 PM
My quest to have a solid state MP3 player which will fit my entire music collection and be able to interface with Rhapsody has been full of much more drama and taken much more time than I ever thought possible.
I won't bore you with history, but lets just say it's been through an E280R, A fuze, and a fuze + with no luck.
Well I finally got my Fuze to be able to not only run Rockbox but also keep my Rhapsody integration (kind of). If you like Rockbox, or are forced to use Rockbox because of the 8000 limit and still require Rhapsody track support, I have a solution. (NOTE: I Don't load Audible books, so I don't if it will work with Audible books, but if the Audible DRM is similar to Rhapsody, then there is no reason it can't
You will need the following:
- The latest fuze firmware (fuzea.bin) available on this forum (keep this in a safe location, you will need it)
- The Rockbox Utility for loading Rockbox (easiest method of installing Rockbox)
- Fuze V2 (I haven't tested on other Sansa platforms but it should work similarly)
- Rhapsody client software and a Rhapsody to go subscription:
SETTING UP YOUR FUZE FOR ROCKBOX
Step 1. Load your Rhapsody Tracks and channels on your Rhapsody player and re-license your player so that your tracks are all up to date and you have approximately 30 days remaining until you need to sync your device to Rhapsody
Step 2. Switch the players USB mode to MSC. Use the Rockbox Utility to load Rockbox on your player. Use the Complete installation button from the Quckstart Tab for the easiest installation. Rockbox will first install a bootloader by creating a modified fuzea.bin file and installing it on your device. This will allow your Fuze to "dual boot" between Sansa Firmware and Rockbox The Utility will then download the latest stable version and install it to your player. The installation will NOT alter the fuzea.bin file stored on your computer.
Step 3. Once installation is finished, disconnect your player. it will refresh your media and will change your settings as if you just upgraded firmware. Your tracks should still be playable however. Keep the player in MSC mode. Turn off your player.
Step 4. Once rockbox is loaded to your player, it will default to Rockbox when you turn on the player. .
At this point you will be able to switch between Rockbox and Original Firmware at your whim.
If you want to use Rockbox, simply turn on your player. I use Rockbox MOST of the time because it has better database handling and adds a lot of functionality to the player (like the ability to create playlists directly on my player) In my case, its the ONLY way I can access to all of my Music collection since Rockbox does NOT have the 8000 song DB limit.
If you want to boot into original firmware to play subscription music or Rhapsody channels, simply turn off the player, hold down the left side of the scroll wheel and turn on your player.
NOTE: VERY IMPORTANT!!!! NEVER ADJUST YOUR DATE WHILE RUNNING THE ROCKBOX FIRMWARE. DOING SO COULD IMMEDIATELY EXPIRE YOUR SUBSCRIPTION CONTENT THE NEXT TIME YOU BOOT INTO ORIGINAL FIRMWARE. You will simply have to "live" with the fact that when running Rockbox, your Date will be incorrect. You can adjust the time, so the clock is correct, but adjusting the date may cause your content to expire.
TO ADD UNPROTECTED CONTENT:
(Note: The below steps are unnecessary if you are running Rockbox build e61142a-120211 or above. This build supports USB transfers so you can simply turn on the player, once it boots into rockbox plug it into your computer and your computer will install the rockbox device drivers and you should be able to transfer files while the unit is booted into rockbox. This prevents the "Updating Media" message that takes so long to complete after a transfer.)
Step 1: With your player off, plug it into your computer with the sync cable. Your player will boot in original firmware. Since it is now a Mass Storage Class device, you can simply copy and paste into the player or use a program like Winamp or Media Monkey.
Step 2: Once you have transferred your unprotected content, disconnect the player. The player will reboot automatically and you will have to wait the Updating Media message. Once this is finished, you can power cycle the player to get back into Rockbox.
TO ADD ADDITIONAL RHAPSODY TRACKS, UPDATE YOUR CHANNELS, OR RENEW YOUR DEVICE LICENSE.
At some point you will need to connect your player to Rhapsody to keep your DRM content playable. Unfortunately, the modified boot loader prevents your player from properly communicating with Rhapsody even if it is in MSC mode. So we need to temporarily remove the Bootloader. Luckily its simple.
Step 1: Connect your player to your computer (with the player in MSC mode)
Step 2: Copy your original fuzea.bin file to the root of the player.
Step 3: Remove the player from your computer. This will force a firmware upgrade and will effectively remove the bootloader from your player. At this point your player will boot into original firmware and Rockbox will not be available until you reload the bootloader
Step 4: Your player should default it's USB mode back to Auto Detect. If you wish, you can manually change it to MTP mode so you can connect to Rhapsody. However, in most cases, Auto Detect will work just fine.
Step 5: Reconnect your player to your computer and launch Rhapsody. Your player should now communicate properly with Rhapsody and you should be able to Renew your licenses, add or remove subscription tracks, and update your channels.
Once you have updated your Rhapsody content, you will now want to reload the bootloader so that Rockbox is accessible.
REINSTALLING THE ROCKBOX BOOTLOADER:
Step 1: Change your USB mode on your player to MSC mode
Step 2: Connect your player to your computer
Step 3: Run Rockbox Utility, and click the installation tab
Step 4: Choose the "Install the Bootloader" option. The Utility will ask you to browse to your fuzea.bin file so it can create the bootloader. It will then install the boot loader on your player.
Step 5. Once bootloader installation is finished, disconnect your player. it will refresh your media and will change your settings as if you just upgraded firmware. Your tracks should still be playable however. Keep the player in MSC mode. Turn off your player.
Step 6. Once rockbox is loaded to your player, it will default to Rockbox when you turn on the player.
I know, the documentation seems to be more trouble than it's worth, but it's really quite easy. And typically I only do this about once a month because I fill up on channels, toggle between my music and my Rhapsody Channels until my subscription has almost expired. As far as other subscription tracks go, I may load the occasional album from Rhapsody to see how I like it. If I like it enough to hold it on my player for more than 30 days, then I'll buy it, and load it as a non-protected .mp3 and use Rockbox to play it.
I hope this helps those users who love Rockbox, or by necessity NEED Rockbox, but still mourn the variety of Rhapsody Channels or test driving the occasional new album.
09-09-2011 09:56 PM
Of course, Refurbished Fuze's are "cheap" enough to buy 2. One for Rockbox, One for Rhapsody, but then I need to keep track of two devices. For me, it's worth the 5 to 10 minutes "extra" work a month to unload and reload the bootloader so that I can keep my subscription and non-DRM content on a single device.
09-10-2011 04:43 AM
Nice work, p_opus!
Clip Zip 4GB+16GB, e280, Fuze+ 16GB <--All rockboxed. Cowon D2+ 16GB+32GB, Sony NWZ S639
Nexus 7 32GB, Samsung Galaxy Tab 7.0 Plus 16GB, LG Optimus G Pro 32GB+32GB
09-10-2011 09:51 AM - edited 09-15-2011 10:58 AM
Original firmware Date and Time 10:25 AM 9/10/2011. Rockbox Time: 7:00 AM 10/5/2013.
I get it now. It makes perfect sense!!!
Setting Date and time in the original firmware does not write to the hardware clock. It justs sets an offset between the hardware clock and what is displayed in the firmware. This would prevent users from simply keeping their DRM protected content forever by trying to set back the date and time through the original firmware.
When you connect to Rhapsody, it reads the value on your hardware or "secure" clock.
When DRM material is loaded, the certificate is witten based on the current value of the hardware clock. Tracks are set to expire 30 days from the value on the hardware clock.
When you download Rockbox, you don't "break" DRM per se. You do, however do two things.
1. You eliminate the players ability to communicate with the Rhapsody software. I don't know why, perhaps there is a checksum or value the software expects that changes when the bootloader is created. This would make sense. Rhapsody wants to make sure you are running unmodifed firmware.
2. When you adjust the date and in Rockbox you write changes to the hardware clock. This has the side effect of possibility voiding all your track licenses as your hardware clock is now outside the validity period on the license
Since the Rhapsody application wlll no longer communicate to your device, then you have no way of renewing the licenses as long as the bootloader is present
By overwriting the bootloader firmware with original firmware, then you can connect to Rhapsody and renew your licensed content.
Pretty clever actually.
When you reload the bootloader, your DRM tracks remain playable as long as you don't effect the hardware clock settings by setting the date in Rockbox.
02-12-2012 08:34 PM - edited 02-12-2012 08:52 PM
Just when I thought it couldn't get any better, I find out USB transfers are now working.
I downloaded the latest build, and while it seemed to take a couple of times for my Windows 7 box to properly detect and download the rockbox device drivers, now it seems to be working well.
The unit will still default to original firmware if you plug in USB with the unit off. However, if you have the unit on and booted into Rockbox, the USB symbol will appear in the Fuze screen and Windows will install the rockbox MSC device drivers.
After a couple of failed attempts it seemed windows finally properly installed the device drivers
Just for a test, I erased and then rewrote a folder to the SD card and it was sucessful. I have a USB charger at work, I'll need to see if that still works and allows playback while plugged in. I hope so.
Now I don't have to wait for the dreaded database refresh everytime I add an album, only when I refresh my rhapsody tracks.
Hopefully this will be added when the next "stable" release (3.11). In the meantime, you can download the latest release and extract the .zip file on your computer and copy the .rockbox folder into your player and allow your computer to overwrite existing files and the new build will automatically start.
(Fuze 8GB Black with Sandisk 32GB microSD card)
(rockbox build e61142a-120211)