On the surface this device is totally unremarkable (apart from the fact that Leapfrog have spent some serious money for software licenses including Pixar stuff and Star Wars) but once you start doing a little more research it becomes an all together more interesting little device.
Some of the 1st things I discovered were that its ARM based (an ARM926) and that is it Linux based (with the board bring up done by Cozybit) with Leapfrogs bespoke ‘Brio’ software layer sitting on top. That was enough to get my attention and after a discussion with a fellow Didj hacker Claude Schwarz I decided that it was probably worth committing my findings so far to this blog so they don’t get lost.
It is also fair to say that this device may be of interest to anyone hacking on the GP2X Wiz (more on that later) and with it’s very low cost (has been seen for $40) it may well appeal to a lot of the resourceful hardware hacking types I am so fond of ;-).
One other thing that sets this out from the crowd from a hacking perspective is availability. Leapfrog is a decent sized company and they are pretty good at getting there product out into the market (and keeping it out there) so there is a good chance this device may well out live the myriad of interesting but gone tomorrow Chinese devices. It is often much nicer to hack on something you can still buy in 3 months time.
So here we have some of those findings.
What are the high level specs?
- 320*240 TFT LCD.
- 393MHz ARM 926 CPU.
- Partial OpenGL ES 1.1 support (told you it gets interesting).
- Familiar DPad and button layout.
- 2 Gigabit NAND (so 256 MegaBytes).
- 32MB DDR Memory.
- Custom cartridge for additional storage (no SD slot or the likes). Cartridge has UART on it and most things you may need for expansion it would seem. Still some unknown pins.
I am not really that interested in the physical aspects of the device in this post, more the hardware aspects (what makes it tick, who made it etc.).
Ok, so most importantly what SoC (system on chip) is used in this beast? It would seem that Leapfrog have there own unique ARM SoC called the LF-1000 used in the Didj.
Now like most people I would not believe for a minute that Leapfrog have the resources to custom fab and design there own SoC for one device so this leads to the next question.
Who’s existing SoC are there reusing (and rebranding?). As it happens finding this out was not very difficult at all and just took some resorting to sniffing the boot logs, checking the kernel code and a few simple tests and register pokes (if you want to know how to get a serial console out of the Didj cartridge connector check Claude Schwarz’s BLOG).
And the SoC masquerading as the Leapfrog LF-1000 seems to be none other then a lower clocked version of the MagicEyes Pollux 3D SoC as used in the GP2X Wiz. It’s not clear right now if this is a genuinely lower clocked part that MagicEyes have made for Leapfrog or (much more likely) it is just a straight off the shelf Pollux SoC with different printing screened on.
The chip seems to behave just as the MMSP2+/Pollux do with regards UART booting and poking appropriate registers seem to evoke the expected Pollux response.
Where is the code?
Leapfrog released a tarball consisting of the Linux kernel (2.6.20) used and several other supporting applications including the devices little boot loader (lightning boot) and some user space stuff and other misc code.
Going forward this should be of great interest to any would be hackers and Claude has already brought the system up with a custom bootloader loaded over UART.
Things to do?
Right now, not a huge amount. It will have to drop down the pile as I want to finish off some GP2X Wiz stuff and the Pandora work is still eating a fair amount of my free time.
Once/if that settles down I would love to start looking at what options we have to just bring up some form of simple removable storage on this thing in the form of a custom cartridge.
I am leaning towards trying to get XD cards working as they are basically RAW NAND anyway but in a nice removable form factor so you could end up with a cartridge that converts to XD and then just use XD cards without the need to change the cart.
If anyone is interested in the Didj or is doing anything cool with it please let me know.
Other Didj sites (not all are that up to date):