MyMPx.org

MyMPx.org (http://mympx.org/forum/)
-   General Discussion (http://mympx.org/forum/general-discussion/)
-   -   Hooray!!! Rockchip SDK! (http://mympx.org/forum/general-discussion/43348-hooray-rockchip-sdk.html)

tp11 26th Sep 2009 12:34 pm

Does anyone know if there are more source/documents for Rockhip on pudn.com? I have account there and can download so if you find anything interesting, please let me know. It is possible to browse the site without an account.

I couldn't find the following archive (documents for RK27) from this site so I uploaded it to Megaupload. Most of it is in Chinese and looks like it deals with the screen and tvout etc.

MEGAUPLOAD - The leading online storage and file delivery service

WIZARD 26th Sep 2009 2:00 pm

Rockchip Manuals
 
I've already included most of the Rockchip documents
into this archive with SDK: This link was deleted

I've downloaded your archive, only one file .chm is new,
but I don't know how to open it. Don't worry,
maybe you'll find something new.

sid6581 28th Sep 2009 8:15 pm

Quote:

Originally Posted by borelg (Post 283184)
I buyed this player last week LINK. In Options-> System information it says:

Product name: RK27SDK
Major version ID:2.2
Hardware ID:080722

The memory size is 16 gb. There is a problem reproducing music: the volume of the singer in all songs is too low! The instruments and the base of the song is perfect but the singer volume is very low!! do you know why? Is it possible to modify my new firmware with another firmware only in the part that regards music player?
Thank you in advance guys!

Not sure it is a firmware problem.
If you get the sound of the music pretty well and don't hear the singer ("karaoke effect") it is probably that left channel is substracted from right channel. It could be that some pin are shorted together.
Of course, I say this because I assume they would not ship a firmware with such an obvious issue, but who knows ........ :)

sid6581 28th Sep 2009 8:27 pm

Hey Knob,

I am back from vacation and ready to play !!!

I received the same player as yours ordered from tinydeals ( well i hope it is haha ).
It has a RK2705 and uses two 4GB MLC Flash.
Note the empty room for an unknown chip.
It might be there to make future players based on the same PCB but with touch screen capability ? I don't know :)

A picture of it :
http://img223.imageshack.us/img223/4273/rock2n.jpg

I have 3 other players based on the 270x.
One of them is touch screen, here is a picture
http://img401.imageshack.us/img401/2928/rocktouch.jpg

I don't know the difference between RK2706B and RK2705, it could be that RK2706B has some integrated touch screen controller.
Note, in my players that have FM, there is the nearly exact same FM module based on the CL5767 chip.

Cheers

sid6581 28th Sep 2009 8:46 pm

Quote:

Originally Posted by AleMaxx (Post 283243)
Hi Knob,
so your selfbuilt firmware has audio problems while the original firmware doesnt? In that case I would recommend to look at the working firmware code and compare it to the sdk source. This would require some ARM assembler knowledge and I recommend the non-free IDA disassembler. Have a look at one of my previous posts where I explained how to load a BASE.RKW firmware file if youre not familiar with this. If youve got any further questions, just ask. I havent dealt with sound so far. Also are you interested in getting a real OS running on your player or just modifying that rockchip firmware?

Regards

Hell yeah ! I am interested in getting a different OS running on my player !

Now i am not sure what you mean by "real OS" ;)
You know like me that the RK270x is just an ARM7 (well, a nice ARM7, i had read somewhere it is an ARM7EJ-S), and a nice ZSP400 DSP. No MMU for us, what kind of OS would be qualified of "real" on that thing ? uclinux ?

It is possible that RockOS is actually quite OK, but we don't have the source code for it.
I would be happy just with FreeRTOS for example.

How would you proceed ?

The ideal for me right now would be to have a simple firmware that initializes clocks, SDRAM, LCD, then write ..... "hello world!" on the screen.
Do you know how the RK270x boots from MLC NAND Flash ?

I have no experience at all with it, this is only speculation, please give me feedback:

1) RK270x scans MLC NAND Flash blocks and read first page for example to search for a marker for bootloader
2) once found, reads the bootloader
3) the bootloader has code to mount the file system that is located on the MLC NAND Flash
4) the bootloader loads the firmware binary in RAM and executes it.

Ok now, the only thing i have done so far is to compile the emulator on the PC.
I still have not done actual work with the device since i just received it today !

sid6581 28th Sep 2009 9:21 pm

This link : Rcckchips RK27XX production tools and upgrade help function -Technical-Mp3 MP4 Player Firmware Downloads Base!

suggests that when the RK7xx players's NAND Flash are blank, the device will enumerate into a proprietary USB device that can talk to the PC.
It looks like it is then possible to upload some bootcode to the player's RAM via USB.

It would make sense to me if Rockchip chose to have some special code in ROM that allows this.
Like, if no valid bootloader code is found on MLC flash, then it enters this mode.
I think it is much faster to burn the code that way in the factory (via USB), rather then burning code into the bare MLC NAND flash chip, especially when we know that NAND flash come with bad blocks that have to be taken care of when building the filesystem....

That would be awesome if we could enter that mode (i bet similar to "DFU mode" of iPhone and OpenMoko and so on...)
Do you guys know of any way ?

AleMaxx, i have seen your page and that usbrocker.c
It looks like you talk to the device via USB but you actually talk to the firmware i presume.
Looking at the firmware USB code you know that some particular SCSI commands are accepted and you use those ?
Mmmmh but here we are still in RockOS' world, not sure it is what I want to achieve, but i presume this way you could also upload some code directly to RAM and execute ?

sid6581 28th Sep 2009 9:58 pm

Ok so I am learning, and of course all of you guys already know this ...
There are even USB drivers for this.... That failsafe mode is called "RockUSB mode" and there is a rockchip tool that can perform the MLC flash programming from the PC, when we are in that mode. Well well well !!! That's great news :)
I see that we even have the USB drivers for that special mode, although i would only use them to understand how the protocol works.

Knob, could you tell me the sequence to get our MPx player in this mode ?

I guess we don't have the source code of that rockchip tool, so the next step is to use a USB packet analyzer on the PC, in order to see how it uploads the boot code into rockchip's RAM.
This is one of the doors for complete control of the Rockchip players !
It is probable that we could use the libUSB drivers instead of the rockchip "RockUSB mode" drivers and then talk to the device.

Maybe it has already been done ? I don't want to re-invent the wheel .....

sid6581 28th Sep 2009 10:55 pm

Knob, i haven't found how to put our player into RockUSB mode (soft way).
So I used your post here : http://mympx.org/forum/dead-players/...ery-guide.html

The hardware tweezers method makes sense to me.

The idea is to short some data lines together of the MLC NAND Flash so the RK270x ROM CODE will always read wrong data from the flash and will never find a valid bootloader. Then, it goes into this RockUSB mode automatically to give a chance to reprogram the whole flash.

This is very cool !!!! ( although i would prefer the soft mode haha )

sid6581 29th Sep 2009 12:24 am

Quote:

Originally Posted by knob (Post 283209)

Hey Knob, I am getting a red screen with this firmware ?
( The bootloader i use is version 3.34 2008-03-04 15:42:22 )

DSX 29th Sep 2009 1:13 am

Hey guys

I was thinking, the only thing stopping us right now is incompatibilities. So, what if we had a program that would copy the init from our old firmware and inject it into our new firmware, then all we would have to worry about is having the right screen size.

Unfortunately, I'm not very experienced with c or assembler. So, I'm just putting the idea out there.

flasher86 29th Sep 2009 3:46 am

Hey guys. Sid, you have the same player as knob has. Do you also have audio problem? (mono signal on headphones). I am interested in buying 27XX player but I want to expand the firmware (RTF reader and subtitles on videos). But if something major (like audio) is bugged then it's pointless.

Has anyone a working player with compiled SDK, without any problems? If so, please give me link to some shop or something.

knob 29th Sep 2009 4:25 am

Quote:

Originally Posted by sid6581 (Post 283286)
Knob, i haven't found how to put our player into RockUSB mode (soft way).
So I used your post here : http://mympx.org/forum/dead-players/...ery-guide.html

The hardware tweezers method makes sense to me.

The idea is to short some data lines together of the MLC NAND Flash so the RK270x ROM CODE will always read wrong data from the flash and will never find a valid bootloader. Then, it goes into this RockUSB mode automatically to give a chance to reprogram the whole flash.

This is very cool !!!! ( although i would prefer the soft mode haha )

I never had to open this player yet!

sid6581 I hope you carried out this procedure in case your firmware is different!
Firmware Extraction for new Rockchip RK27xx series players.

This repair tool will get you into rockusb mode:-
Download

The space on the pcb might be for the wolfson audio chip.
the red screen usually indicates something wrong with the BMP0.bin file or it's missing, strange.
Does the player operate blind?, can you navigate and play music?

knob 29th Sep 2009 4:40 am

Quote:

Originally Posted by DSX (Post 283289)
Hey guys

I was thinking, the only thing stopping us right now is incompatibilities. So, what if we had a program that would copy the init from our old firmware and inject it into our new firmware, then all we would have to worry about is having the right screen size.

Unfortunately, I'm not very experienced with c or assembler. So, I'm just putting the idea out there.

Yes I fully agree. It's crying out for a tool to extract the screen, button and audio settings to apply to the firmware build. In fact I think it's a must if we are to get maximum users involved.

flasher86 29th Sep 2009 4:54 am

for screen issues we could create some wizard in which all the known lcd drivers are loaded one by one, e.x. in every 15 seconds. And if screen works, you would hit any button to set current driver. This way we wouldn't need to compile everything to make it run on other players. The wizard would be initialized at first run only.

sid6581 29th Sep 2009 9:01 am

Quote:

Originally Posted by knob (Post 283294)
I never had to open this player yet!

sid6581 I hope you carried out this procedure in case your firmware is different!

Ahem no I haven't :-/

But it does not matter too much if i never go back to my original firmware.
My goal is really to upload my own recompiled firmware anyways, but so far it is red :-P

knob 29th Sep 2009 9:56 am

Quote:

Ahem no I haven't :-/

But it does not matter too much if i never go back to my original firmware.
My original firmware is here btw.
http://mympx.org/Downloads/p13_secti.../p13_fileid/29

sid6581 29th Sep 2009 11:31 am

Quote:

Originally Posted by knob (Post 283303)

Thanks, could you point me on the tool I should use to upgrade this firmware ?

Also, I have seen online that there are firmwares that come as a big .rkw file (like 30MB ?)
While yours come as a directory structure.
What is the difference between those two ways, is the big .rkw just a packed version ?


I was able to use the repair tool and just put the ramos970 firmware in it and it works.
It's funny now the audio has this problem of not having the voice (left channel and right channel are substracted from each other), so that's something to do with the firmware and it will be correctable.

knob 29th Sep 2009 11:58 am

just put a file called rkusb.tag on the main drive then reboot and the firmware partition will open up, then just copy the 4 folders across and reboot - no need to flash with RK27xx rockchips

You can upgrade with .rkw using the Repair Tool if your brick your player, just rename the file to SETUP.RKW and put it in the firmware folder below the tool.

sid6581 29th Sep 2009 2:58 pm

Hi Knob,

I used rkusb.tag and saw the hidden partition.
I then copied the files from our original firmware : Download Rockchip Firmware: Rk2706 Player from Tinydeal - MyMPx

The player still goes RED :(
The player I bought from tinydeal is exactly the one you have (btw it is a RK2705 inside, not a RK2706).

I have no clue what i am doing wrong.

When the screen is RED, two drives still show up.
One is empty and has 60MB free
One is full with the hidden partition stuff but there are no files in SYSTEM and no files in SYSTEM00 directories !

knob 29th Sep 2009 3:15 pm

I'm using Rock27boot 3.30 2008-01-17 20:53:14

here's a selection:-
http://www.sendspace.com/file/mlvkxp

also:-
http://mympx.org/forum/dead-players/...ed-screen.html

sid6581 29th Sep 2009 3:48 pm

Quote:

Originally Posted by knob (Post 283309)
I'm using Rock27boot 3.30 2008-01-17 20:53:14

here's a selection:-
Send big files the easy way. Files too large for email attachments? No problem!

THANKS ! It works now with our original firmware ! :)
( However i had to use 4.14 2008-06-16 10:16:27 , 3.30 would not work for some reason ... )

I also tried the output of your own firmware compilation and it seems to work too. Very good !

Now I would like to compile the firmware by myself from your own rk27sdk_new.

So, I have installed ADS compiler & codewarrior with crack.
I open ide/rk27_board/rk27_baord.mcp in codewarrior and just hit "make".
I have tons of warnings but in the end, no error.

However I don't know what I should do after that...
I don't even know if it's the right way to compile.

Any tip ? :)

knob 30th Sep 2009 12:29 am

Quote:

open ide/rk27_board/rk27_baord.mcp in codewarrior and just hit "make".
I have tons of warnings but in the end, no error.
Yes that's what I do. If you get no errors a batch file in resource folder should run and generate a new base.rkw in the OUTPUT folder.

sid6581 30th Sep 2009 10:05 am

Hi Knob, I was opening the .mcp on a different SDK directory, so i was not looking at the right place haha ;)

Ok there is a problem.
When i plug the USB cable, the mass storage device shows on windows (together with an image on the player), one or two seconds after, the unit disconnects and shows the battery charging. I let it the whole night like this and it is still showing as charging this morning...
So I never get a chance to upload anything to the player !!! :(

Also, I cannot see the mini SD card...

Do you have these problems ?

knob 30th Sep 2009 10:53 am

hi sid6581, No mine stays as a mass storage device when connect to USB and I can transfer files to my player no problem, not on vista by any chance are you? Linux and Winxp are ok but folks have been having problems with vista.

Not sure about the card, mine uses microSD but I don't have one handy to try.

flasher86 30th Sep 2009 11:02 am

I had similar problems with my RK2606 player. I just plug it out and plug it in again until it stays visible to the system. I noticed that it depends on the system and the firmware. WinXP better handles these devices.

knob 30th Sep 2009 11:47 am

Just tried a raw uncompressed audio file on the player, still has the same audio problem, I'm gonna delve back into the source code again to get to the bottom of this.:confused:

sid6581 30th Sep 2009 11:59 am

Quote:

Originally Posted by knob (Post 283323)
Just tried a raw uncompressed audio file on the player, still has the same audio problem, I'm gonna delve back into the source code again to get to the bottom of this.:confused:

I wish I could help but again, I cannot upload anything to my player since it goes to this weird battery charge mode ( i have Win XP ). Maybe I am going to put a switch that disconnect the battery to the unit, whenever i want ...... arf.

Can you describe the audio problem exactly ?

knob 30th Sep 2009 12:16 pm

Yes it's like the left hand stereo is coming out of both earplugs together with some distortion and the speaker doesn't come on when the earplugs are pulled out.

btw have you got a linux boot you could try the player on? I take it the original firmware is ok?

AleMaxx 30th Sep 2009 1:03 pm

Since knob mentioned linux, it depends on the kernel if your player will be recognized. 2.6.24 does not work for me 2.6.29 and 2.6.31 (and I guess everything in between) works.

knob 30th Sep 2009 2:01 pm

Well we don't have a RK27xx datasheet so I had a look at the Rk26xx datasheet.
I think I have found what would cause my problem. It's on page 84 btw.

CR1: Control Register 1

Bit 7: JACK: Output Jack plug detection status
0= no jack 1= output jack present

Bit 6: MONO: Stereo-to-mono conversion for DAC path
0= stereo 1= mono

Bit 5: DAC_MUTE: DAC soft mute mode
0= inactive 1= puts the DAC in soft mute mode (internal input MUTE)


Just need to find and fix it now

flasher86 30th Sep 2009 2:03 pm

Sid, I don't think cutting off the battery will fix your issue. If your player is detected as massive storage device for a few seconds it can be enough to upload a new firmware using batch command. Using batch mode you have at least 1,5 second advantage in accessing the flash before it appears in MY COMPUTER.

I used a similar code to upload compiled RKP file into my player while I had to do this dozens of times for testing and was tired of clicking and moving it manually.
Code:

@echo off

:try2copy
copy D:\base.rkw X:\SYSTEM\ /y > NUL

goto err%ERRORLEVEL%

:err0
cls
echo File has been uploaded!!
goto finish
:err1
goto try2copy

:finish
pause

Change the path to the base.rkw and the letter drive of your player. It will create an endless loop which will try to copy the file into your player as soon as it appears in the system (not my computer). It will finish after successful.

BTW. I heard that RK2706 are also hard to kill after wrong firmware update. What If you deleted existing base.rkw and then use update tool provided for this family of players? If there wasn't working firmware on flash, it should go into USB mode function hardcoded by manufactory. But I'm just thinking, I don't want to be responsible for your loss.

Knob, I think you have found something helpful. RK260X and RK2706 are quite different from each other, but the SDK has similar functions and similar names of values (like CommandCodecSet and its values CCR, CR1...). It is possible that you are on the right track ;-) Thumbs up.

tp11 30th Sep 2009 11:32 pm

Following archive has a datasheet for RK27XX (in English!) and other documents:

MEGAUPLOAD - The leading online storage and file delivery service

I translated the filenames to English using Google and Bing:

http://www.megaupload.com/?d=FQQJJ7FV


Quote:

----Boot to burn a description written
- RK27-burning write guide V0.92.doc
-
----Datasheet
- RK27xx client Edition DATASHEET.pdf
-
----Detailed design documents
- BMP algorithm Documents .dot
- E-book Module Detailed Design.doc
- Explorer design documents.doc
- Game - detailed design of the tank.doc
- Games - Thunder fighter detailed design of the.doc
- Photo View Module Design Description .doc
- RK27xx Photo View Module Design Description.doc
- Rockchip bmp decoder.doc
- Set Menu Module Design Description.doc
- The detailed design of the clock calendar.doc
- The detailed design of the game simulator.doc
- The detailed design of the radio.doc
-
----Documentation
- - File System Usage.txt
- - RK27xx Platform Description V0.9.doc
- - RK27XX platform programming specification V0.9.doc
- - RKOS OS V0.91.doc
- -
- ----Design reference
- Compiler Reference.pdf
- Debugger Reference.pdf
- GUI Reference (1).pdf
- GUI Reference (2).pdf
- Operating System Reference.pdf
- Processor Reference.pdf
-
----UI Description
- Description of the e-book.doc
- GUI advanced development - - system characteristics V1.0.doc
- Preliminary V1.0 RK27XX GUI development.doc
- RK27 Explorer design.ppt
-
----GUI control document
GUI advanced development indicator V1.0.doc
GUI advanced development - scroll bar V1.0.doc
GUI advanced development - dialog box V1.0.doc
GUI advanced development - picture class V1.0.doc
GUI advanced development - text box V1.0.doc
GUI advanced development - - the menu class V1.1.doc
GUI advanced development--list box V1.1.doc
GUI advanced development-animation class V1.0.doc

sid6581 30th Sep 2009 11:52 pm

Quote:

Originally Posted by tp11 (Post 283334)
Following archive has a datasheet for RK27XX (in English!) and other documents:

MEGAUPLOAD - The leading online storage and file delivery service

GOSH !!!! Wonderful documents !!! The datasheet is very accurate !!!!!!!!!!

tp11 1st Oct 2009 12:15 am

I also found a following site with a lot of interesting material:

Rockchips firmware - mp3 player firmware discuss - Powered by skmp3!

AleMaxx 1st Oct 2009 1:26 am

Thanks a lot for the info tp11, especially the first upload includes some very valuable information.

tp11 1st Oct 2009 4:33 am

Something more, possibly useful. Pcb for a player HTC-098-RK-V1:

MEGAUPLOAD - The leading online storage and file delivery service

cisi 1st Oct 2009 6:36 am

Hi Rockchip developers,

I am C++ and C# programmer and I would like to help to develop custom firmware because I own ONDA VX787. I downloaded the RK27SDK_new2.rar. There are the pieces of information how to compile the code in this thread.
But is there any full list of steps how to complile the code with own modifications?

knob 1st Oct 2009 9:43 am

Quote:

Originally Posted by cisi (Post 283342)
Hi Rockchip developers,

I am C++ and C# programmer and I would like to help to develop custom firmware because I own ONDA VX787. I downloaded the RK27SDK_new2.rar. There are the pieces of information how to compile the code in this thread.
But is there any full list of steps how to complile the code with own modifications?

hi cisi and welcome!

Anyone is most welcome to help out, especially c++ programmers.
You will need ADS v1.2 to compile the source unpacked to the c drive.
open the C:\rk27sdk_new\Ide\Rk27_board\rk27_baord.mcp in ADS and click "make"

If you want to use the simulator (not required but useful) you will need vc++ 2008 express also.

sid6581 1st Oct 2009 9:45 am

Hey Knob and Flasher86.
So far I did not have luck in finding the bug related to audio. I still think it is in the CODEC config ...

flasher86 1st Oct 2009 10:36 am

Thanks to AleMaxx I successfully disassembled base.rkw

But its hard to trace every function there, I will give another shot tomorrow. Today I am too tired and havent slept for 40hours so far. I have to think clearly. But with the datasheet which we got now it is perhaps possible to fix this without digging into ASM code.

Despite that it's nice to see that the thread is so alive ;-)


All times are GMT -7. The time now is 8:38 pm.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2015, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0 RC 2