4 ms·
Remember those silly cheap <$5 picture frames you find in $2 shops, or as a free bonus online sometimes? You probably have one lying around. If it uses an AX20
by i336_ 11y ago
Remember those silly cheap <$5 picture frames you find in $2 shops, or as a free bonus online sometimes? You probably have one lying around.
If it uses an AX206 chipset, you can flash whatever code you like onto them with an SDCC-based toolchain.
You get a color LCD with at least 128x128 resolution (some cool devices are 320x320), and MENU, LEFT and RIGHT keys for input. Perhaps best of all, they have a bootloader, meaning burning the wrong code into Flash is completely recoverable :D
There are a couple basic firmware images that come with the toolchain - one to let you control the LCD from Linux, and one that dumps CPU registers in real time (for debugging) - so it's very easy to get started.
Vague high-level overview: http://picframe.spritesserver.nl/wiki/index.php/DPF_with_AppoTech_AX206 http://picframe.spritesserver.nl/wiki/index.php/DPF_with_App...
SVN repo: http://sourceforge.net/p/dpf-ax/code/HEAD/tree/trunk/src/ http://sourceforge.net/p/dpf-ax/code/HEAD/tree/trunk/src/
If you have a device and want to play with this, I recommend cloning the SVN repo and pouring over the readme file inside, which covers backing up your stock firmware, identifying your device model so you know which firmware to build (and if it's an AX206 at all - moment of truth :P), and reflashing. It only takes about 30 minutes to feel like you've read everything thoroughly enough and execute a reflash.
There are some conflicting bits of information and link-rot here and there, but I'll say this: I know zero about low-level device hacking, and I managed to get this installed onto a cheap picture frame I had lying around within a few minutes. I also managed to fully recover from a bad flash run too.
My DPF currently sits on my bedside table with the debug firmware on it (you enable the debug code via a config file change); the sole reason I've done nothing with it (tetris! breakout! space invaders!! :D) is that the buttons on mine are on the back :( (why??? >.>)
So, the project and code actually does do what it says on the tin, and the hardware is very resilient. :D
Note that some picture frames are based on the ST2205u or ST2203u, which use a 6502 core (the AX206 uses a MCS-51 aka 8051 core). This is quite different, with no SDCC toolchain; you'll need to know 6502 asm for these, I think. There does appear to be some LCD-control firmware available for these which you could work from but the AX206 is much easier to start with I think.