I’ve bought yesterday a Creative Zen. As a player, it is really good, as you can see in many reviews.

Despites that, I’ve had a hard time, managing to get it to work in my laptop with Ubuntu. Finally, I’ve came up with a solution. The comunication with the device must be done via MTP, so I’ve had to use the latest libmtp to connect it. The package included in the repositories is too old, so you have to download and compile it yourself. Here’s how.

Before starting, if you have access to a windows machine, please, use it to update your firmware! I think that it was am important step to make things work. Note that the creative site only shows firmware to the 4/8/16/32GB versions, but this is also the same to be used with the 2GB version.

Go get the latest source to libmtp from their site. Remove the old libmtp, in a terminal, by typing:

sudo apt-get purge libmtp6

This will also uninstall rhythmbox, if you have it, and any other software that depends on libmtp.

Extract the archive downloaded and get into the folder with:

tar xf libmtp.tar.gz

cd libmtp

You’ll need libusb-dev to compile libmtp. You should also install checkinstall, that will create automatically a .deb package of the program, after it is compiled, simplifying the process of removal whenever you want to. Install them with:

sudo apt-get install libusb-dev checkinstall

Now we’re ready to compile libmtp. Since we’re already inside the folder, type

./configure –prefix=”/usr” – this will check that all the dependencies are installed and create the Makefile to compile the library. The prefix is need so that the files are put in the correct place!

make – this will take a bit, it will build the program from the source

sudo checkinstall -D make install – this is were we install libmtp. Checkinstall will create a debian package(-D) from what was compiled and install it. This is way better than the normal make install, since you can remove the package anytime by typing dpkg -r NameOfPackage.deb, or even send the package to someone who needs it and don’t want to build from the source.

At this point, you have libmtp installed, and you can even see that your device is already detected with sudo mtp-detect.


Since libmtp is only a connection to the device. You can only receive a list of files, create new folders, send one music at the time, and some other basic operations. We want to access the Zen as a file system, so that we’re able to copy entire folders. For that, we must use mtpfs. Get the source from Adebenham website and do the same that we’ve done with libmtp:

sudo apt-get install automake – dependency for mtpfs makefile

tar xf mtpfs.tar.gz – extract the source

cd mtpfs – enter the directory

./configure

make

sudo checkinstall -D make install

And we’re done! If everything went ok, we’re now ready to mount the zen. To do so, plug it in, and, as root, create a folder were you can mount it and actualy mount it:

sudo -s

cd /media

mkdir zen

mtpfs -o allow_other zen/

The zen should appear in your desktop. You can use nautilus or any file manager to move the files around. I’m not able, don’t know why, to remove files through the desktop manager. So I have to it by hand, with rm /dir/to/file.

If it all works, from now on, just do the following as root(sudo -s or sudo command):

mtpfs -o allow_other /media/zen – this wil mount the device

fusermount -u /media/zen – this will unmount the device safely. You should do this before removing it. If any warning about the device being busy is shown, please wait a bit, some file transfers are probably still happening.

Since this is a really recent player, this is not a fully stable solution, and I’ve spent >5h to achieve an workable connection. I hope this article will save you some hours. I found such bad documentation, that I’ve had to write this myself.

Good Luck. If it helped you, please, digg it.

BTW, converting videos is also an issue. I’ve used iriverter to convert mine, and they now work, but I cannot see the video lenght! If anyone has found a better solutions, please, comment it!

Tags: , , , ,