Arduino Slide Viewer Slide Show

Quite some time ago, I found an old slide viewer in an antique store, and had an idea for a neat little hack. I finally finished the hack, and I’m pretty happy with how it turned out.

Slide Viewer

I took a 1.8″ TFT LCD from Adafruit, some AAA batteries, and a couple other bits and pieces, and turned the slide viewer into a digital photo viewer that shows a slide show of photos:

Since an actual Arduino wouldn’t easily fit inside the slide viewer, I built a minimal board around the ATmega328 on some prototyping board:

Front of board


Back of board

All it includes is a crystal, the capacitors needed for the crystal, a resistor to hold reset high, and some header pins for various things, including the ISP pins.

Using layers of card stock glued together, I made a frame around the LCD that slots into the slide viewer:

Insert and board

The insert with the LCD and the board with the AVR chip all fit into the back of the slide viewer where the backlight used to be, and a battery pack of 3xAAA batteries fits where the original 2xC cells used to sit:

Inside of slide viewer

The slide viewer originally had contacts on the bottom that look like they allowed it to slot some sort of external power supply into it.  I’ve re-purposed that hole to mount an on/off switch, as well as a 4-pin female header block that breaks out Vcc, GND, and the I2C pins:


I have another pair of sketches, not quite well enough polished to release yet, that turns the slide viewer into an I2C LCD, so it can be controlled from another Arduino. (If you’re interested in those sketches, leave me a comment with some contact info)

Once it’s all closed up and turned on, it displays the images on the 160×128 LCD:

The glare is much less in person, with your face close to the glass.  The images are pixelated, but certainly recognizable.

The source code is available here on Github.  This includes the Arduino sketch, and a Linux script to convert JPEG images to the required raw format.