{Home} | {Up}

Being Creative: JuiceBox


juicebox

STOP PRESS:I posted some of these photos on the MAKE Flickr pool and they blogged it!


Hardware
I bought a cheap JuiceBox on eBay with the intention of putting it in a frame and getting it to display a slideshow. I always forget to take a photo before I take something like this apart, so here's one I found on the web.

The JuiceBox is designed for kids, it takes special cartridges with things like TV cartoon shows and music videos. With an additional "Media" kit and adapter, it will display images stored on a Secure Digital (SD) card. I disassembled mine and took it out of its plastic case. I also took the plastic case off the SD adaptor. The card sticks out the side quite a long way so I had to find a fairly large picture frame which could accomodate it (with room to remove and insert cards) and deep enough to contain the circuit board and LCD. I used small push-buttons to replace the original ones (Fast Forward, Play etc). I got a RadioShack project box and drilled holes in it to accept the switches and an on/off toggle switch
Circuit board with replacement switches (note the SD card on the adapter card), switch plate
I drilled equivalent holes in the picture frame (a "shadow box") and bought a standard double mat.
Picture frame with math and holes for switches
I cut out a segment of the interior frame to accept the switches and wires and screwed in a terminal strip to hook up the power. I bought a small power supply, also on eBay, so I could plug the whole thing in and not worry about batteries.
Inner frame with junction block and gap for switches
I had a mat cut professionally with a small window for the LCD. I glued the front half of the JuiceBox's case onto it so I could screw the LCD and circuit board securely in place.
Original case (slightly Dremeled) glued to new mat
The three mats meant I had to doctor the frame's back plate a bit, I stripped off the thick foam layer (leaving just heavy card) and added an extra sheet of card. I nipped the bottom corners of both pieces of card to allow the power cord out.
Fully assembled: the mats, inner frame and power cord
The final result:
It works!
I wrote some PostScript to create a nice little legend for the switches (Note that in the first image above the third button is "Pause" but on my unit it was an asterisk symbol, I used a circle for simplicity)
The switch legend
The switches are important because the slideshow doesn't start automatically, you need to press Play.
The switch legend
At the moment the frame is nestled in a bookcase, but I might hang it on a wall
Mandelbrot in the bookcase

In the bookcase

Software
The JuiceBox reads its own file format (.JBP, basically a bitmap with 12 bits per pixel, 240x160 pixels, 57,600 bytes). I'd hoped to load up a SD card with a random collection of photos, perhaps mixed in with other things. The Media kit comes with a program which converts JPG files into JBP's and puts them on the SD card. I wrote a small command-line program which read the header of a JPG file and let me filter out files which aren't "Landscape" orientation (because "Portrait" images would be shrunk even further to fit the LCD). I also wrote a program to randomly rename a group of files (the slideshow plays in a fixed order). I wrote another program to automatically create JBP files of random Mondrian-like images, views onto the Mandelbrot set, 1D Cellular Automaton simulations, random quotations etc, etc
Things to put in the slideshow
Unfortunately, even though the JuiceBox can accept SD cards up to 512MB, the card must be formatted as FAT16 and the image files must be in the root directory. I think there's some internal memory limit, perhaps a buffer used to build the list of files found, which if exceeded means no images play. I originally created and loaded files with names like TEST0001.JBP and found I could have at most 226 images. That sucks just a little. I found that by munging the file names to be one- and two-character names I could fit 283 files on the card. That seems to be the maximum. At the moment my JuiceBox is just showing random Mandelbrot views. It does pretty well with photos, considering the LCD size and colour depth. Images do have a slight blueish tinge.
Overall thought, I'm very happy with the way this project turned out.