dev builds
themes manual
device status forums
mailing lists
IRC bugs
dev guide

Search | Go
Wiki > Main > CreativeZEN > CreativeZENPort

This port is still unstable, use it at your own risks. Please read the important notes !!

Forum discussion

Creative ZEN New Port thread

Port Status

feature status comments
Boot 90% No failure reports recently
LCD 100% LCD working.
Keys 90% Buttons are working, but the keymap is very limited and does not make use of all available buttons
Music playback 100% Everything works
FM Radio 90% Everything works but the driver might not be of the greatest quality.
Recording 100% Works.
Power Management 90% No battery calibration, no (power-saving) memory DFS
SD 90% Internal storage and SD works. SD write-protection is ignored at the moment.
USB 90% Everything works
Manual 0% TBD
Rockbox Utility 0% TBD

WARNING: at the moment, Rockbox cannot use the same file system as Creative does on the internal flash. As a result, you will need to reformat the internal flash to FAT and thus lose any data stored there. See note below.

Important notes

Disk Usage

At time of writing (2014-02-07) the port can't operate alongside the OF because RB and the OF use incompatible file systems. As a consequence, if you format for the OF, Rockbox won't boot and if you format for Rockbox, OF won't boot. That means that installing Rockbox will require you to reformat your entire disk and you will loose all its content. The SD card will stay untouched. It is strongly advised to put music on the SD card since the internal storage handling might change in the future and require formatting once again.

Power Off

In Creative OS, when you "power off", it doesn't actually shut down the device but only puts it into a low power state. Thus when you power on from this state, you get back into Creative OS because the device doesn't actually boot, it only wakes up. If you want to really power off in Creative OS, you need to use the reset button.

Bootloader features

The bootloader comes with a number of features which allow to recover from potential problematic situations.

Booting to the OF

The bootloader can either boot rockbox or the OF. By default it will boot rockbox. The bootloader will boot the OF if back button is hold while powering up. This works independently from the power source. For example, the following actions will boot the OF:
  • hold back - then press power for a few seconds
  • hold back - then plug the usb cable (plugged into wall outlet or computer)

Note that booting to the OF correctly will require to reformat the player for the OF, see the important notes.

Get the bootloader

The bootloader can be obtained using three different methods. The recommended one is the automatic method using RockboxUtility when it's available. The semi-automatic method requires a working cross-compiler and a copy of the Rockbox source code.

Automatic method

Semi-Automatic method


This method requires the following things:
  • a working cross-compiler (arm-elf-eabi), see HowToCompile
  • a copy of the source code, see HowToCompile
  • a copy of the latest firmware for the Creative ZEN. At time of writing (2013-12-07) the latest version is the one named ZEN_PCFW_L22_1_21_03e.exe (Europe variant) or ZEN_PCFW_L22_1_21_03.exe (US variant).

First you need to compile the bootloader, to do this follow the instructions from HowToCompile and when running the configure script, select the Creative ZEN and bootloader build. After the build, you should get a bootloader-zen.creative file (you don't need to go further than the 5. Build step in HowToCompile).

Then you need to build the mkzenboot tool in rbutil/mkzenboot. To do so, just cd into rbutil/mkzenboot and run make. It should produce a mkzenboot executable.

Finally, you need to run the tool with the correct parameters. Assuming you are in rbutil/mkzenboot, run:

./mkzenboot -i ZEN_PCFW_L22_1_21_03e.exe -b bootloader-zen.creative -o firmware.nk -t dualboot

You should replace ZEN_PCFW_L22_1_21_03e.exe by the path to the firmware you downloaded from Creative, and replace bootloader-zen.creative by the path to the bootloader-zen.creative file produced by the compilation. Note that this command will produce a file called firmware.nk .


Since RockboxUtility is not ready for the task, I uploaded a prebuilt image of the bootloader here: firmware-zen.nk.

Installing the bootloader

Once you have the bootloader, you have to install it. Note that installing the bootloader is only required once (or on bootloader updates, which are pretty rare). To update Rockbox itself, you don't have to do this. You will need to format the device after the bootloader installation, as described in the next section.

Very Important: in order to perform the upgrade, first turn off your device and then boot into recovery mode by holding the play button on boot. It will show a menu in which you should select "Reload firmware" and confirm. After having erased the firmware, you can proceed below.

Automatic method

RockboxUtility should be able to do that in the future.

Semi-automatic method (Windows)

An alternative method under Windows is to repack the bootloader in the installer using the zentools and use the installer normally. This has not been tested yet.

Manual method

The last method is to use the sendfirm tool in utils/MTP. It works both under Windows and Linux. To build it, change to utils/MTP and run make for Linux or make sendfirm.exe for Windows. It will produce a sendfirm or sendfirm.exe executable. Note that the Windows version requires MTP_DLL.dll which can be found in utils/MTP (you can also build it from utils/MTP/MTP_DLL/). A prebuilt version for Windows can be found here: sendfirm.exe and MTP_DLL.dll. Prebuilt versions for Linux can be found here: sendfirm32 and sendfirm64.

You must then run it this way: (replace firmware.nk by the path to the bootloader built in the previous section).

  • Linux: ./sendfirm firmware.nk Note that after sending the whole file (ie progress show 100%), the tool will probably display the following error after a timeout: Error 2: PTP Layer error 2002: get_suggested_storage_id(): could not get storage id from parent id. This is expected and you can safely ignore it. Your device should display "Upgrading firmware" and perform the upgrade.
  • Windows: sendfirm.exe firmware.nk

Formatting the device for Rockbox

Rockbox and Creative OS do not use the same file system so one cannot use both at the same time. In order to run Rockbox, you will need to reformat the internal storage as FAT. If you want to restore the Creative OS, you will need to reformat it using the recovery mode. It is strongly advised to put music on the SD card since the internal storage handling might change in the future and require formatting once again.

Formatting for Rockbox

This step is very important. You will not be able to use you device before you do it.

  • Power off your device
  • Plug the USB cable and wait for the Rockbox bootloader to show up and enter USB bootloader mode
  • The device should appear be detect as Mass Storage device in your host. Use your favourite tool to reformat it as FAT.
    • In Windows: You will need to use the Disk Management tool. refer Microsoft documentation or google on how to do that, make sure to use FAT and not NTFS.
    • In Linux: use gparted or partitionmanager or command-line tools such as mkfs.vfat. It is strongly advise to create a DOS/MBR partition table and then create one FAT partition.. Note that on some distribution like Ubuntu, you might get an error message about not being to mount the mtp device: This is normal and you can safely ignore this. Go ahead and use whatever tool you need to format it.

Formatting for Creative OS

  • Power off your device
  • Boot into recovery mode by holding the play button while sliding the power button
  • In the menu, select format

Downloading and installing Rockbox

Download the first package found here. Copy the contents of this .ZIP file to the device.

Battery Calibration

From pamaury 2016-12-16:

If you want to help calibrate, what you can do is:

  1. charge your device to 100%*
  2. start the battery_bench plugin
  3. start a very long playlist in repeat all mode
  4. put a reasonable volume with headphone
  5. let it discharge until it powers down
  6. send me the battery_bench.txt file

Ideally you also want to do the same when charging:

  1. [right after power [up]] start battery_bench again
  2. plug usb by holding a key (so that usb mode is not triggered)
  3. let it charge to 100% percent *
  4. send me the battery_bench.txt file

* Go to System > Debug > HW Info > powermgmt, and it shows the charging state: charging, topoff, disabled [or] discharging. Wait for topoff. Otherwise in [power], wait for charging: 0

-- AmauryPouly - 06 Nov 2013
r24 - 12 Jan 2017 - 12:54:39 - ChrisJordan

Parents: CreativeZEN
Copyright by the contributing authors.