Didj

We are currently in the process of upgraded and organizing these pages, please forgive the mess, thank you.

Summary
The Didj was a toy produced by Leapfrog marketed for educational games for children aged 5-10.

Didj was end-of-lifed by Leapfrog in mid-2010. It has been replaced by the Leapster Explorer.

Although Didj has a proprietary graphical front end, it runs a generic Linux distribution on an Arm based processor. Soon after the Didj's release, it was discovered that the cartridge port contained pins that allowed for serial console access with root privileges. After this discovery, work began to modify the Didj into an accessible emulation device.

Since development began, much has been accomplished, including:


 * Discovered that the Arm chip is the same as on the GP2X Wiz, only at a lower clock speed.
 * Created cartridges that support SD cards
 * Accessed the UART features in the cartridge slot

Platform
LeapFrog Pollux Platform

The Didj is part of 3 different devices that all share a common hardware platform, based around the Pollux SoC. The platform page contains information generic across these devices, and it is recommended that you refer to that page as it is a good starting point to understanding the Didj, and contains some basic How To's and Tutorials to get you started.

Boot Loader

 * Lightning Boot
 * U-Boot

Tutorials/How To's
 General 
 * Common Commands Reference

 Networking 
 * Enable Networking via USB Gadget
 * Install Dropbear SSH
 * Playing MP3 network streams and files

 USB Storage 
 * USB Mounting Under Windows, Linux, and OS X
 * SCSI Commands

 Cartridge 
 * Make an ATAP NAND Cartridge

 Flash NAND 
 * Flash Data to NAND
 * Updating Bootloader/Firmware

 Firmware Image 
 * Mount jffs2 Image on Linux PC - (is correct endianess)

 Brio Development 
 * Replacing the default App Menu from the default App Menu

Development Scripts and Programs

 * LF1000 UART Bootstrap Utility written in Python
 * [[media:lf1000-bootstrap-utilities.tar.gz |LF1000 UART Bootstrap Utilities]] based on the OMAP boot utilities from TI
 * OpenDidj Connect

Technical Information

 * Initial Memory Map Dump
 * Map of Didj GPIO Pins

 File System Info 
 * rootfs / rootfs rw
 * /dev/root / jffs2 ro
 * none /proc proc rw
 * sysfs /sys sysfs rw
 * /dev/ram0 /tmp tmpfs rw
 * /dev/mtdblock1 /flags jffs2 rw,sync,noatime
 * /dev/mtdblock2 /mfgdata jffs2 ro,sync,noatime
 * /dev/mtdblock10 /Didj vfat rw,noatime,fmask=0022,dmask=0022,codepage=cp437,iocha rset=iso8859-1
 * /dev/mtdblock11 /Cart vfat ro,noatime,fmask=0022,dmask=0022,codepage=cp437,iocha rset=iso8859-1

Filesystem               Size       Mounted on /dev/mtdblock6           14.0M     / /dev/mtdblock1         896.0k    /flags /dev/mtdblock2           1.0M    /mfgdata /dev/mtdblock9         215.8M    /Didj

''' Active Kernel/Rootfs

Near the begging of the boot message you should see one of two root options: root=31:04 You are using mtd4: 00e00000 00020000 "Linux_RFS0" or root=31:06 You are using mtd6: 00e00000 00020000 "Linux_RFS1"

 Battery Compartments 

The Didj has two identical battery compartments, the combined collection of batteries are wired in series.
 * Battery Compartment Terminals:
 * Term 1 - Battery +
 * Term 2 - Temp Sensor + Wired to Pollux pins K20 / GPIOA 28 and K21 / GPIOA 29
 * Term 3 - Temp Sensor -
 * Term 4 - Battery -

 Rechargeable Batteries 

In addition to the terminals facing the Didj's contacts, there are another set of contacts facing away from the Didj. These contacts are duplicates used by the charging station. The batteries themselves are NIMH cells, producing around 2.5v per pack when fully charged.

 Recharging Station 

The recharger station contains a battery charge circuit with temperature monitoring. The station also has a pair of contacts that duplicate the 9V dc barrel jack.

 SSP / SPI Controller  Didj SPI Info