Rockbox Technical Forums
Rockbox Development => New Ports => Topic started by: irishwhistle on December 19, 2007, 03:54:34 PM
-
I am interested in getting ROCKbox ported to Zen V/V Plus. What should I do to make this possible? Is it possible for me to port it myself? I'm pretty good with computers and have had some experiance with Basic (no, it's no C.) :P Is anyone else interested in taking this on?
-
Check out http://www.youtube.com/watch?v=AVX_1oACvHc for disassembly instructions. It'd be a good thing if some of the developers owned a Zen V/V Plus. Also look around at websites like http://www.epizenter.net/ and get a porting effort going.
-
The Zen V and V Plus come under the Zen Vision M port - http://www.rockbox.org/twiki/bin/view/Main/CreativeZVMPort
The first step I would do is to find out the CINF, NULL key and ©TL for both players - try running the zenutils from the wiki page on the firmwares and smart guessing the keys - i don't think there will be much diff - im guessin "CTL:N0MAD|PDE0.SIGN." "1sN0TM3D az u~may th1nk*Creative Zen V" & "1sN0TM3D az u~may th1nk*Creative Zen V Plus" will be the appropriate keys.
-
The Zen V and V Plus come under the Zen Vision M port - http://www.rockbox.org/twiki/bin/view/Main/CreativeZVMPort
The first step I would do is to find out the CINF, NULL key and  ©TL for both players - try running the zenutils from the wiki page on the firmwares and smart guessing the keys - i don't think there will be much diff - im guessin "CTL:N0MAD|PDE0.SIGN." "1sN0TM3D az u~may th1nk*Creative Zen V" & "1sN0TM3D az u~may th1nk*Creative Zen V Plus" will be the appropriate keys.
Cool! 8-) Just one question. What about the joystick? Does the ZVM support that?
-
I suppose its just an extra module/file in the firmware - have a look at the directory structure and compare it to the structure of the ZVM - I don't think zenutils supports the Zen V yet - unless you want to manually add the const in the source of zen crypt/main.cpp in zen utils
-
I think that the Zen V has not been investigated at all as a rockbox port. Can you go to the following page and find out the information for the Zen V/Plus (could it be different for each?) and what do you own, a Zen V or a Zen V Plus?
http://www.rockbox.org/twiki/bin/view/Main/CreativeZVMPort#Other_Creative_players_firmware
You are lucky on that one: I just recently figured these out, but I'm missing a Zen V Plus firmware image, so if you could send me one I'll give these values also (although they will resemble a lot like the ones already there)
-
I think that the Zen V has not been investigated at all as a rockbox port. Can you go to the following page and find out the information for the Zen V/Plus (could it be different for each?) and what do you own, a Zen V or a Zen V Plus?
http://www.rockbox.org/twiki/bin/view/Main/CreativeZVMPort#Other_Creative_players_firmware
You are lucky on that one: I just recently figured these out, but I'm missing a Zen V Plus firmware image, so if you could send me one I'll give these values also (although they will resemble a lot like the ones already there)
How would I get a Zen V Firmware image? If you tell me how to get one, I will get it as soon as possible.
-
How would I get a Zen V Firmware image? If you tell me how to get one, I will get it as soon as possible.
I need the Zen V Plus actually ;)
Well, it only works if you have one; then download the firmware upgrader and when upgrading your firmware, go to C:\CtJbFW\cttemp\, there will be a nk.bin file: copy it and send it to me.
The other way is extracting it out of the firmware upgrader with zook's utils, but that gives me problems atm so that's why I'm asking someone for the firmware.
Or I could try it with an older firmware upgrader (older firmware version) if someone has backupped one ?
-
What is the difference between the Zen V Plus and the Zen V Video? I own a Zen V so I can't really help you with getting a firmare image for a Zen V Plus, but if you need anything for the Zen V, I can help you there ;)
-
What is the difference between the Zen V Plus and the Zen V Video? I own a Zen V so I can't really help you with getting a firmare image for a Zen V Plus, but if you need anything for the Zen V, I can help you there ;)
I don't know that exactly as I don't own any of the Zen V's, but it is supposed to be a Zen V with Video function but without FM support released in some countries.
And I already got a firmware image from Ice++ and I've put the CINF, TL and NULL values on CreativeZVMPort in the wiki.
As for getting this port done, I would recommend that you get the player disassembled and look what the internal components could be and search for data sheets. Then start reverse engineering the firmware (I can give you some hints on that one) and start writing drivers for the necessary components.
-
Here is my original post. (posted in a wrong forum originally (my bad :) )
I have one dead Zen V plus 2G (died because i fell in salt water with it )) ) .
so i disassembled it and here the photos of mobo
http://www.megaupload.com/?d=B3H0T1W2
so whats in the archive
1 st - A battery. 560 mAh p\n BA20603r79919 ))
2 - mobo - part with screen connector
3.1 - mobo lower part there is some sort of wire on it so it is a picture with it.
3.2 the same but without wire stuff
There is a Samsung Nand - k98g08u0m x2
Philips Fm Stereo chip tea5767 http://www.ortodoxism.ro/datasheets/philips/TEA5768.pdf here is the datasheet
Phison ps3002t CF CONTROLLER
Infineon Flash HYB25L25616af
Creative ca0209-HA6 chip (some Sigmatel ? )
and a small shiny oscillator xD named "hkc 24.000Ñ6" i think you will be able to read the rest.
-
According to this post, and the discussion it links to: http://www.epizenter.net/comment.php?comment.news.271, the Creative branded microprocessor is a Sigmatel STMP3600, which has had linux ported to it already (http://linux.sigmatel.com/), so a lot of the low-level work would presumably already be done?
-
@MarcGuay: Do you think we could use the ported Linux kernel to boot up the Zen?
Does anybody have new information regarding the encrypted firmware?
I tried reversing it (actually haven't done much on it to be honest) but it feels like searching for a needle in a haystack.
-
@MarcGuay: Do you think we could use the ported Linux kernel to boot up the Zen?
I'm willing to help and learn (I'm an experienced assembly and C programmer though).
Does anybody have new information regarding the encrypted firmware?
I tried reversing it (actually haven't done much on it to be honest) but it feels like searching for a needle in a haystack.
How far did you get last time?
Currently, zenutils (in SVN) should allow you to decrypt the whole package and to fiddle with it.
About the ported Linux kernel: it won't do much without some (reverse engineering) work because you don't know how to drive the LCD (controller) etc
-
How far did you get last time?
Currently, zenutils (in SVN) should allow you to decrypt the whole package and to fiddle with it.
About the ported Linux kernel: it won't do much without some (reverse engineering) work because you don't know how to drive the LCD (controller) etc
Well, I didn't do much besides the few times you and me chatted about reversing with IDA, but I'm willing to give it another shot ;)
So, after we get the LCD (and some other things?) working we could use parts of the ported Linux kernel?
-
Well, I didn't do much besides the few times you and me chatted about reversing with IDA, but I'm willing to give it another shot ;)
So, after we get the LCD (and some other things?) working we could use parts of the ported Linux kernel?
Yes, that's how I should do it: try to get some output going on (most of the times this is the LCD because serial/JTAG is hard to find) and then go on with the rest.
One problem could be that the Zen V uses NAND flash and the structure of it hasn't been figured out yet (perhaps this is the same as the (NOR) flash dump of the ZVM?), but before you'll get there, there's still a long road to go :)
-
An elementary wiki page can now be found here: http://www.rockbox.org/twiki/bin/view/Main/CreativeZenV.
-
I read this (http://www.epizenter.net/e107_plugins/forum/forum_viewtopic.php?80951.post) on epiZENter and wondered if there's another way to trigger this HW 'rescue' mode?
Perhaps (similar to the e200v2 models), this mode can be triggered when temporarily short-cutting the NAND flash chip..
If this would be true, this could perhaps make it possible to dump the ROM (if available) or NAND chip directly through USB (if someone could figure out the USB protocol).
Don't get me wrong: it is entirely possible to upload custom code to _all_ Zen players without any problem (see CreativeZVMPort wiki for more info on that), but this could make it possible to dump the NAND flash and/or other stuff.
edit:
@MarcGuay: where did you get that LCD information from?
-
I found a way to get to the STMP3600 hardware recovery mode: remove the battery and connect to USB. Someone wrote a firmware extractor for the 3400/3500 series but I can't find the code for it. In other news, I finally took a peak at the ZenUtils and found a few interesting differences in the Zen V firmware. It looks as though FBOOT has been replaced by a very short file called FBCB which contains the strings "STMP", "BCB2", and "CACA" (either an inside joke or a coincidence). Presumably this is because the Zen V bootloader exists in the STMP ROM and not on flash. Some details of the ROM structure can be found in the Sigmatel Linux docs, I believe.
-
I found a way to get to the STMP3600 hardware recovery mode: remove the battery and connect to USB. Someone wrote a firmware extractor for the 3400/3500 series but I can't find the code for it. In other news, I finally took a peak at the ZenUtils and found a few interesting differences in the Zen V firmware. It looks as though FBOOT has been replaced by a very short file called FBCB which contains the strings "STMP", "BCB2", and "CACA" (either an inside joke or a coincidence). Presumably this is because the Zen V bootloader exists in the STMP ROM and on flash. Some details of the ROM structure can be found in the Sigmatel Linux docs, I believe.
About those strings, those are all common to Creative. I recognize the CACA from the Creative ZVM flash dump/FBOOT block (perhaps BCB2 too, I don't remember that one though).
Probably this bootloader is one of the first code to get runned upon device start-up (as is FBOOT on the ZVM) and it'll load either FRESC or Hjukebox2.jrm (depends whether the specific keys are hold or not).
-
I need the Zen V Plus actually ;)
Well, it only works if you have one; then download the firmware upgrader and when upgrading your firmware, go to C:\CtJbFW\cttemp\, there will be a nk.bin file: copy it and send it to me.
I'd like RockBox firmware for my Zen V Plus because I want bookmarking that also remembers playlists.
mcuelenaere - do you still want a copy of the nk.bin file? If so, I'll reflash the latest v1.32.01 firmware to get it for you.
-
I'd like RockBox firmware for my Zen V Plus because I want bookmarking that also remembers playlists.
mcuelenaere - do you still want a copy of the nk.bin file? If so, I'll reflash the latest v1.32.01 firmware to get it for you.
There's already an easier way to get it: using ZenUtils.
And as I don't own the device, don't count on me porting Rockbox to it; you're better of doing it yourself.
-
You can remove the firmware to upload your own by holding the play button down while turning the player on, which will display a recovery mode where one of the options is to completely remove the firmware, if that's any help to someone. I would also like to help port rockbox to the zen v plus but don't know how to go about it.
-
UK based 1GB Zen V plus free for anyone that wants to help develop rockbox on it....
-
Well, my zen v plus 2GB's battery just died. I took it apart so I can help if you need any insight on a dissassembled zen. Unless, that is, I find a battery to replace the one that died.