I’ve seen digital photo frames in stores for about $100 or less. I’ve also seen custom built ones on the web in various iterations of Arduino or Raspberry Pi. Most of them look just like the commercial versions. A LCD screen inside a frame.
I wanted something different. Feeling a bit nostalgic with the 30th anniversary of the introduction of the Macintosh, I found a Macintosh Classic II on EBay to use for the project.
- Stylish (Subjective)
- Linux OS computer
- 7″ LCD TFT Display
- 802.11n WiFi
- 8Gb RAM
- IR Sensor
- SSH access
- Can be used to play movies (future project)
This is my project finished.
The first thing I had to do was clean the old Mac up. It was nasty. It not only had some permanent marker and nail polish on one side but it was also yellowed from hands touching it. It was definitely used in a school. Cleaned and sanitized it by sanding it fine sandpaper and then wiping it down with bleach wipes.
Now on to the good stuff. The parts list:
A Macintosh Classic (doesn’t have to be working. Just need the case)
Raspberry Pi (Model B)
8GB Class 10 HCSD Memory Card
Edimax EW-7811Un 150 Mbps Wireless 11n Nano
HC-SR501 Human Sensor Module Pyroelectric Infrared
SB Raspberry Pi Case (Clear)
7 inch TFT Color LCD Car Rear View Camera Monitor
Kootek Raspberry Pi Power Supply Micro USB Charger Adapter (DC 5V 1.5A 1500mA)
Another Power Supply Adapter (DC 5V 1.5 1500mA) (I had one laying around that I used)
Coax Power Plug Male
Coax Power Plug Female
RCA Male to Male Adapter
USB Extender Cable
Jumper connectors (only needed 3 out of a 40 pack)
USB Keyboard (used for initial setup)
Tearing apart a Classic Mac is not easy if you don’t have the right tools. The first is a #15 Torx screwdriver that is at least 8 inches long. Macs were notorious hard to work on if you didn’t have the tools. Once the case is open, you have to be careful since you are working around HIGH VOLTAGE equipment.
I gutted the Mac taking everything out except the metal frame that held the hard drive and disk drive. I lucked out with the size of the LCD display since the mounting bracket for the display is just large enough to sit in the monitor bezel. I had to think hard on how to hold in place securely then it came to me that using lockwire would hold it.
Once the LCD screen was in place, that rest was fairly easy. Setting up the Raspberry Pi using Raspbian “Wheezy” for the OS. Before placing everything in the Mac, I setup the Raspberry Pi and made sure all the connections worked before stuffing it into the case.
Here are some the key settings I used for the OS:
– Autologin – Since this is an appliance. I want to be able to plug it and let it go.
– SSH – Just in case I have to get back into the system, I can remote access it.
– mDNS – Being on the same network, I can find it easier instead of guessing it’s DHCP assigned address
– No GUI.
The I wrote scripts to trigger the the display on/off and fetch images “borrowing code” a couple of different sources. The main source that I got info from was this site: http://www.ofbrooklyn.com/2014/01/2/building-photo-frame-raspberry-pi-motion-detector/ but instead of fetching from Flickr, which I have no interest in using, I am using DropBox. The advantage is that later, I can modify my scripts to include different types of media including videos. All I have to do is drop it in the DropBox folder and minutes later, it’ll show up on the Mac9000. I have it sync every few minutes. I originally started with downloading a entire folder every few hours but changed it to use Dropbox-uploader.sh to only download the files that are added. I can make the script run every 5 minutes and the bandwidth is less than downloading a zipped folder.
The problem came was dropbox-uploader didn’t have a way to sync the files so I wrote a script that would look at the files in dropbox and the local slideshow directory and remove the difference thus whatever was in the Dropbox folder would be the master file list. Some of the scripts are available here: https://app.box.com/s/a2kofl5llpb5qzf7b8ia
For the DropBox script to work, you have to edit it with your DropBox folder address. You get the address by logging into DropBox throughout the web and selecting your folder then clicking share. The text after http://www.dropbox.com/sh/ is your encoded folder address. Put that in the script and your ready to go. You might want to create a folder specifically for the Mac9000 in your DropBox.
Stuffing everything into the case was fairly easy. I used a power strip to provide power to both the display and the RPi in the case. This makes a cleaner presentation with only 1 cord coming from the case.
If you notice there’s a USB plug and network cable tucked on the back. These additions came about after I tried made some changes to the network config and hosed it. If for some reason I can’t access the RPi from the network, I can plug a keyboard into and plug it into the network without taking the case apart.
The RPi and powerstrip are secured to the metal hard drive frame. The powerstrip was just the right length that I could just use friction(wedged) to hold it securely in place. The RPi is held in place with a couple of zip strips. Cables are zipped and routed out of the way for the most part. The only cables that are not zipped are the USB extension cable, network cable, and power cord.
The PIR sensor is mounted behind the disk drive slot. I put a screw through the disk ejection hole to secure the PIR board. The sensor works real well in that spot. My original idea was to cut into the case and mount the plastic PIR diffuser but this makes it look less conspicuous.
The PIR is connected to the RPI using jumper wires. Radio Shack had them but only sold them in single color packs. I wasn’t going to pay over spend so I got the black wires and just put colored shrink tubing on the ends to id them.
Here’s a close up the GPIO pins used on the RPi for the PIR sensor (Pin 1 is on bottom left):
The case is held together with just the bottom 2 Torx screws. I wasn’t going to deal with the 2 screws that located deep in the top handle which requires a long Torx screwdriver to remove (Removing them once was enough). Plug it in and let it run.
It connected to my WiFi, went out and downloaded the pictures I had in my DropBox folder, and started the slideshow.
Some additional build photos are located on my Lytro page. https://pictures.lytro.com/rene.hinojosa/albums/144476
Total Cost for the build: ~$160*
*This depends on how much you pay for the used Mac. It also depends on what parts you may have laying around your workshop/garage/attic.
These are some of the main websites I used as resources:
- and Googled anything else.