• HomeBoards
  • RulesRules
  • HelpHelp
  • WikiWiki
  • Donate

Author Topic: Powkiddy J6 development only thread  (Read 1647 times)

mforce2 (OP)

  • Posts: 8
Powkiddy J6 development only thread
« on: February 10, 2021, 08:31:21 pm »
 I'm starting this thread to track development for the Powkiddy J6. There's 2 things to be achieved here. First would be to improve and port things on top of the current OS ( ?C/OS-II as far as I can tell ). Second would be to port Linux or maybe port some open source ?C/OS-II .
 Porting anything would be hard given the limited documentation for the chip ( Actions ATS3603 ).

 Let's start with the hardware, most important is the SOC:

ATS3603 core is a 32-bit MIPS24KEc RISC , runs at 450MHz . There's 64 MB of RAM so enough to run Linux and for storage there seems to be a flash chip ( 16 MB NOR I think ). The main OS is on that chip. Rest is on an SD card that is formatted as exFAT.
 What happens is that at boot the main OS is booted and loads up the main menu ( including it and the icons ). From the main menu the apps are loaded from the SD card ( they're in  the \apps folder of the SD card ).
 One such example is the "calculat.app" which is in apps\calculat.

 Looking at these .app files with IDA Pro we can see that they're just elf binaries ( same as Linux binaries ) and they include plenty of debug symbols which can be useful.

 The game emulation app is apps\emulator.

Now we need to dig deeper into the file system.

Some OS and basic libs are in "/mnt/diska":

/mnt/diska/lib/applib.so
/mnt/diska/lib/commonui/commonui.so
/mnt/diska/lib/fusion.so
/mnt/diska/lib/style.so
/mnt/diska/apps/msg_serv.app

Some other emulator related libraries are also on what seems to be an internal partition,  "/mnt/disk0":

/mnt/disk0/libg1.so
/mnt/disk0/libsfc.so
/mnt/disk0/libgb1.so
/mnt/disk0/libm1.so
/mnt/disk0/libf1.so
/mnt/disk0/libsg1.so
/mnt/disk0/libp1.so

Some other libs are in "/mnt/sdisk":
/mnt/sdisk/libemu.so
/mnt/sdisk/libsfc+.so
.....

And the SD card is mounted as "/mnt/card":
/mnt/card/apps/setting/s480272_style_1

One interesting thing is that there's plenty of debug information in the binaries on the external card.
I've found this string which is interesting:

/cygdrive/e/Mr_hunag_work/ATS3603_UCOS/CD3670_nor_card_st/usdk227c/case_tp/apps/desktop/setting unsigned char GNU C 3.4.4 mipssde-6.06.01-20070420

From here we can see two things. That the compiler used was GNU C 3.4.4 mipssde-6.06.01-20070420.
This can be useful to compile apps and things for the existing firmware ( we'll want to use the same compiler ).
I will provide this and other resources in a new post.
The other thing is that we need to track down a Mr hunag and get him to share the sources with us :).
We can try contacting Powkiddy and ask about him :)

That's it for now, I'll share some useful resources in my next post.






mforce2 (OP)

  • Posts: 8
Re: Powkiddy J6 development only thread
« Reply #1 on: February 10, 2021, 08:48:47 pm »
 As promised here's the MIPS SDE which includes the compiler used . I think it's for use in Linux and I didn't get to test it yet:  https://drive.google.com/file/d/1HWbOy6a19PbnGPQ_crRHC-a6Y-O7P1Em/view?usp=sharing

  Something else that I've found is the Powkiddy J6 enters some special mode ( I think ADFU ) if you press a key during bootup ( forgot which but I'll come back with the info ).
  Once in this ADFU mode these tools could be of use:  https://github.com/Rockbox/rockbox/tree/master/utils/atj2137

  One utility there seems for unpacking encrypted firmware and the other one for flashing or loading binaries.

  If anyone could get the firmware for the Powkiddy J6 that would be really cool.

eknives

  • Posts: 10
Re: Powkiddy J6 development only thread
« Reply #2 on: February 25, 2021, 10:33:25 pm »
As promised here's the MIPS SDE which includes the compiler used . I think it's for use in Linux and I didn't get to test it yet:  https://drive.google.com/file/d/1HWbOy6a19PbnGPQ_crRHC-a6Y-O7P1Em/view?usp=sharing

  Something else that I've found is the Powkiddy J6 enters some special mode ( I think ADFU ) if you press a key during bootup ( forgot which but I'll come back with the info ).
  Once in this ADFU mode these tools could be of use:  https://github.com/Rockbox/rockbox/tree/master/utils/atj2137

  One utility there seems for unpacking encrypted firmware and the other one for flashing or loading binaries.

  If anyone could get the firmware for the Powkiddy J6 that would be really cool.

How can we help you?

Is this: https://1drv.ms/u/s!Ajfdi6u8b4a8gVcS2YuQlpAMFTJb?e=E3ewFS what you need?

It is from Powkiddy X3 that it is the alternate name of Powkiddy J6.
« Last Edit: February 25, 2021, 11:31:52 pm by eknives »

mforce2 (OP)

  • Posts: 8
Re: Powkiddy J6 development only thread
« Reply #3 on: May 25, 2021, 02:02:12 pm »
 OK, so a little update from my side.
 This Powkiddy J6 has a ADFU programming mode like all Actions devices do. To access it your device must be off from the off rocker at the bottom, then you need to press VOL+ and hold and switch to rocker to on.
 Now in this mode when you connect to the PC you'll get the device detected and Windows 10 will install a driver for the Device , you can find it in Device Manager under "Universal Serial Bus controllers".
 I have this software from Actions that detects the device: https://drive.google.com/file/d/1rtRJhpKrM6H6nkps-zROSNV0WDQ3FAfS/view?usp=sharing
 Now the problem is what to flash. A firmware for this device ( fw file ) would help very much.
 The alternative would be to somehow read the existing firmware on the device but I'm not sure how to do this and it would be quite tricky.

Steward_Fu

  • Posts: 21
    • Steward Website
Re: Powkiddy J6 development only thread
« Reply #4 on: June 16, 2021, 10:05:47 am »
Chinese Name: 霸王小子X3 (Powkiddy X3)
Forum: http://c.tieba.baidu.com/p/6719397134?fr=good

mforce2 (OP)

  • Posts: 8
Re: Powkiddy J6 development only thread
« Reply #5 on: June 17, 2021, 08:42:44 am »
Thanks for the info. Unfortunately that post seems blocked, at least for now.

 I've found that the company making it is most likely this one :

 http://www.szrenshun.com/about.asp?ids=8

 The board has "CB" printed on it which makes sense and they seem to call it the "D3670" or "CD3670" internally.

 Maybe you could ask them , not sure if they will give anything but it's worth trying.

 

Post a new topic
Post a new topic