Rockbox Technical Forums

Rockbox Development => New Ports => Topic started by: AndrewT1989 on January 05, 2010, 05:21:47 PM

Title: Creative Zen X-Fi 2
Post by: AndrewT1989 on January 05, 2010, 05:21:47 PM
My previous post, as I have been informed, was devoid of useful information.

To my knowledge, there is no online evaluation of the X-Fi 2's PCBs. A take-apart of the original X-Fi (no idea how useful to a dev) is at http://www.anythingbutipod.com/archives/2008/07/creative-zen-xfi-disassembled.php, and the predecessor is supposedly pretty similar to the X-Fi 2 under the hood (sans touch screen). The device can not simply be unscrewed, and I lack the willingness or technical ability to open the unit without irretrievably damaging it.

Official firmware: http://ccftp.creative.com/manualdn/Drivers/PDE/11153/0x1D33185B/ZENX-Fi2_PCFW_L22_1_10_04.exe I am not a programmer and thus don't know what to make of it, but perhaps someone has the skills to reverse-engineer it and find out something about the underlying hardware.

I ask that any moderators that read this thread to forgive any ignorance of policy on my part. I HAVE read both the NewPort and DeviceStatus pages, and the sticky thread.
Title: Re: Creative Zen X-Fi 2
Post by: mcuelenaere on January 05, 2010, 05:48:17 PM
This applies to most of the Creative Zen series devices: information regarding the file format and its encryption is at the CreativeZVMPort wiki page (http://www.rockbox.org/wiki/CreativeZVMPort); you can use trunk/utils/zenutils/ from SVN to decrypt/extract it.
Title: Re: Creative Zen X-Fi 2
Post by: AndrewT1989 on January 05, 2010, 09:48:09 PM
If anybody here owns an X-Fi 2, it would be great help if you would take hi-res scans of the PCB and post it. Even the original X-Fi would be helpful to an extent. I don't even have a scanner.

One question: would it be helpful at all for me to upload the firmware files that are sitting on my player?

For reference, the firmware appears to consist of 9 files, all located in the parent directory:

APQ.TXT
CDARTTHN.DAT
CTSTORE.DAT
MATADATA.DAT
PREVIEW.DAT
SETSTOR.DAT
thumblnail.dat
wallpaper.dat

When I try to open the .txt file with gedit, it says it doesn't recognize it, which I assume means it's a binary?
Title: Re: Creative Zen X-Fi 2
Post by: CoreDuo on January 09, 2010, 08:49:24 PM
Pictures here. :) (http://www.anythingbutipod.com/forum/showthread.php?t=51372)

There's also some useful details there about the innards. Appears to be similar (if not the same) CPU that's in the X-Fi.

Also some additional information about the firmware (http://www.anythingbutipod.com/forum/showthread.php?t=50651)
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on October 20, 2011, 06:47:29 AM
This thread has been dead for a long time now but since the Fuze+ port is now quite advanced, I'm considering the possibility to to a Zen X-Fi2 port since they have the same SoC. I had the opportunity of getting a very cheap one so I opened it and already can say it has a recovery mode similar to the Fuze+. I've also been able to extract three firmware for the updater executable although it was by hand. The format is of course the same as the fuze+ and I've been able to extract the code using the same tools. By the way, it uses the same encryption key: 0 !!

My priority is to finish the Fuze+ port but then I can have a look at this one, or someone can already start doing some reverse engineeering of the firmware if he/she has the skills :)
Title: Re: Creative Zen X-Fi 2
Post by: kugel. on October 21, 2011, 03:07:23 AM
The format is of course the same as the fuze+ and I've been able to extract the code using the same tools. By the way, it uses the same encryption key: 0 !!
Haha, awesome!
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on December 18, 2011, 03:01:05 PM
Hi all,
today I had a little try and I manage to make the screen work, as you can see here: http://amaury.pouly.free.fr/Images/SSL23036.JPG (http://amaury.pouly.free.fr/Images/SSL23036.JPG). Since this device is so similar to the Fuze+, I'll try to port it, or at least do the basic stuff so that if anyone is interested, he/she can build on top of that.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on April 04, 2012, 10:16:04 AM
Hi all,
I have started a port for this device. Bootloader is working, main binary too (there are few quirks but that's still early stage). I've not yet tried to play music with it. I have a working touchscreen driver but currently the menus look ugly because there is no theme and big fonts. The FM chip is a new one and bertrik will try to work on this. There is currently no driver for the speaker. Finally it seems from my works that there are two versions of the Zen X-Fi2: one using NAND flash as storage and one using SD/eMMC. Since we do not have a nand driver yet and the FTL format might not be completely documented, the current code is booting from the micro-sd card (so it has hotswap as main). It also features an accelerometer which is documented (but has no driver yet). The good point is that we know pretty much everything about the device except for a few pins which need to be figured out and the nand flash which will be a big part.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on December 20, 2012, 10:24:54 AM
Hi all,
some news after a very long time. After some work done on the updater, I have finally found more or less how to update the firmware without Creative's tool. So basically the situation is:
- On Windows: one can send an arbitrary firmware by putting Creatives's updater AND a file called "firmware.sb" in the same directory. Then Creative's updater will send "firmware.sb" instead of the embedded firmware !!
- On Linux: I've developped a tool which can send SCSI commands to the device. When finished, it will allow to read/write any partition, uncluding the firmware's partition, and thus to do a firmware upgrade.

The first option already works and has been tested. There hasn't been any X-Fi 2 specific improvements recently but the port has greatly stabilize thanks to the general work done on imx233. I will update the wiki soon to detail the upgrade procedure so people can test Rockbox on the Zen X-Fi 2.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on January 08, 2013, 02:01:30 PM
After some investigation and tests, it seems that the port is basically working but really slow because the memory clock is too slow. Chaning it possible but complicated, I'm trying to make it work based on the linux port since it is not very well documented. It also prevents USB and cpu intensive codecs from working.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on January 15, 2013, 02:34:28 PM
Hi all,
I have written the installation instruction here: http://www.rockbox.org/wiki/CreativeZENXFi2Port (http://www.rockbox.org/wiki/CreativeZENXFi2Port). Please note that this very early stage although Rockbox runs fine for several reason:
The second point will be easy to fix but the first one will require much more work. Still, Rockbox works very well with a microsd card only, provided it's big enough to contain all your music.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on January 29, 2013, 06:34:51 AM
Hi,
Give the difficulty of building the bootloader currently, I have uploaded two completely built bootloaders. You can find the links on the wiki page http://www.rockbox.org/wiki/CreativeZENXFi2Port (http://www.rockbox.org/wiki/CreativeZENXFi2Port). Follow the "Windows with prebuilt" section. Remember that you need to install the bootloader only once and then you need to install Rockbox by copying it to a micro-sd card, see "Daily builds" in the wiki page.
Title: Re: Creative Zen X-Fi 2
Post by: cela on February 19, 2013, 11:18:44 AM
Just got a Creative X-fi 2 Dap.

Code on the back is DVP-FL015 , which seems to contradict the information on the Wiki as it's got 8GB on board memory plus a microSd slot..

Tried both the nand and sd bootloader version but unable to get the updater to recognize them, it just shows version 1_23_01 to be updated, the firmwares are in the same folder as the updater.

Do I have an incompatible hardware revision? Is there another way to get the bootloader on there?

Got it sorted now, sorry, the downloaded version was named firmware-sd.sb I just needed to rename it  to firmware_sd.sb.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on March 06, 2013, 05:53:26 AM
Hi all,
Several people have reported that the Creative updater doesn't work when the device is in recovery mode. This is indeed embarassing so I have written some instruction on the http://www.rockbox.org/wiki/CreativeZENXFi2Port (http://www.rockbox.org/wiki/CreativeZENXFi2Port) wiki page on how to do this by hand. This is a bit tricky, because there is no Linux-only version currently and the Windows way need to download a tool from Freescale. This should improve in the future when Rockox Utility knows how to deal with the ZEN X-Fi2 but currently there is no simple way.
Title: Re: Creative Zen X-Fi 2
Post by: Nohajc on July 10, 2013, 07:50:27 PM
I'm running rockbox on DVP-FL0012 model using 32 GB kingston class 10 card and the problem is it freezes very often.
Usually, when I start playback it works for several seconds and then it stops leaving the player completely unresponsive. At this point I have to reset it. It happens almost everytime I try to play any music.

Any ideas what could be causing this?
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on July 11, 2013, 03:41:49 AM
Hi,
Yes I've found why it happen (frequency scaling), apparently the DRAM doesn't like to be clocked too high but that doesn't match the datasheet so this needs to be investigated. I will try to come up with a solution soon. Unfortunately I cannot disable frequency scaling because the player is completely unsuable without :( Maybe try to roll back to a older revision in the mean time. Thanks for the report.
Title: Re: Creative Zen X-Fi 2
Post by: Nohajc on July 11, 2013, 09:35:35 AM
Thank you for the suggestion. I'll test some older versions. Oh, and good luck with your programming efforts.  ;)
I'm so greatful I can finally run rockbox on this little baby. When the NAND driver is out one day (I hope it will :D), it'll be perfect!
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on August 22, 2013, 06:17:06 PM
Hi again,
I have some good news: with the recenty work on many places, the Zen X-Fi2 should have gained a lot in stability, especially the crashes when playing should be gone. Someone with the SD version of the device contacted me and we may be able to handle them in the near future. Still no work done on the internal storage for NAND but since microSD is working, I consider this is already sufficient for now. I now the touchscreen driver sucks but didn't have time to improve it. However, with some work done for the Fuze+, a softlock mechanism with touchscreen disable (like on phones) should appear anytime soon, making the device finally really usable !!
Appart from this, radio is still not working, I have some gone but it's ugly, it cannot be pushed in this state. If you have any feedback or comments, do not hesitate to answer here or send me an email because the more you bother me, the more likely I will kill the bugs since I have many things to do and only finite time to do so.
Title: Re: Creative Zen X-Fi 2
Post by: isaare on October 31, 2013, 12:19:18 PM
Thanks a lot for your efforts! I was looking for a new firmware (the original one sucks, the way it manages playlists and reproduction order is a mess) and I found this forum... amazing! I haven't still tried it out as I haven't got a microSD round here, but thanks in advance!
Title: Re: Creative Zen X-Fi 2
Post by: Serathas on February 01, 2014, 06:07:06 PM
So will it be possible to fix the driver for the internal memory? i cant wait to try this!
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on February 01, 2014, 06:16:53 PM
Hi,
I have made some great progress on the reverse engineering of the internal storage for NAND players, I hope to be able to have a working prototype for read-only storage in the incoming weeks.  The task is quite a thing but as a side effect it will enable Rockbox on a few other players which are based on NAND. I don't expect to have a working code for write quite soon but being able to read/write in OF and read in Rockbox seems like a good compromise. I haven't worked yet on the SD based version of the player but since it should be trivial to support, I plan to implement it this week-end, this was long overdue.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on February 04, 2014, 01:26:46 PM
Little UP to say that I got internal storage working on the SD version. With proper code Rockbox can automatically use it if it's available and just ignore it if it's not. I will update the bootloader images soon so you can test it. Not that the NAND version still only supports microsd.
Title: Re: Creative Zen X-Fi 2
Post by: Idroy on February 06, 2014, 05:07:49 PM
How can I turn the volume up? It was a little loud, so I pressed the volume bar icon and then it dropped the volume to 0. I've pressed everywhere on the screen, but unfortunately I can't get it back up.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on February 07, 2014, 08:05:32 AM
In 3x3 grid mode, in the WPS screen press "up" (ie top of the screen). You can algo set the volume using the settings.
Title: Re: Creative Zen X-Fi 2
Post by: RazviTm on January 13, 2017, 07:21:46 AM
Anyone still working on the xfi 2? It is still lacking speaker support. It might be something as simple as monitoring the state of the jack switch which detects if headphones are connected, if not, reroute audio to speaker.
Title: Re: Creative Zen X-Fi 2
Post by: pamaury on January 13, 2017, 08:32:33 AM
Hi,
yes I still maintain the X-Fi2. At the moment the speaker is supported but you have to manually enable/disable it in the audio menu. The device also has code to monitor the jack. What is missing is that Rockbox doesn't have any code to switch the speaker on/off based on jack state. I'll try to add support for that if it's not too hard.
Title: Re: Creative Zen X-Fi 2
Post by: cela on November 07, 2017, 02:22:05 PM
Worth a mention at this point bootloader has been upgraded to v2 (on the wiki) to keep pace with the development of the port and points to the internal memory for model DVP-FL015.

As long as bootloader v2 is used from now on it should only be necessary to install .rockbox on the internal memory.
Also note that earphone detection now is also working.  ;)