My digital picture frame continues to work fine, with only one minor hiccup–a board had come loose, preventing it from booting. I took it apart, reseated everything and it worked fine after that. That event reminded me that I almost never turn the darned thing on. Why? because it runs off a stupid hard drive that takes 3 minutes to turn off. So if I have the image set to rotate every 10 minutes, 30% of the time I can hear it. I don’t want to pay attention to it–I want it to just be there, available to be noticed, but not actually drawing my attention when it changes pictures.
Months ago I had become aware that people sold IDE hard drive adapaters for Compact Flash cards. Since I currently possess a 512MB and a 256MB card for a camera that almost never gets used, I figured one could easily be put to use making a completely silent digital picture frame. I did this using Slax (a super clean Linux distribution). Here’s what I did.
Get SLAX
Follow the instructions here to install the files to a compact flash card. I assume that you have a Compact Flash to USB adapter and that it shows up as a drive in your computer. I used the Popcorn Slax version. Any but the Frodo version should work.
Get Quick Image Viewer
QIV (Quick Image Viewer) is a graphics viewer module specifically for SLAX. Save it to your compact flash card in the \modules directory.
Change Boot Options to Start Xwindows
Open \syslinux.cfg in WordPad (NOT NOTEPAD!) and add “autoexec=startx” to the end of the line that starts out “append”. This was the last line in the file. Just in case, here is what my syslinux.cfg looks like (the append line should all be one line) :
prompt 1
timeout 4
default slax
label slax
kernel vmlinuz
append vga=769 changes=slaxsave.dat probeusb max_loop=255 initrd=initrd.gz init=linuxrc load_ramdisk=1 prompt_ramdisk=0 autoexec=startx ramdisk_size=4444 root=/dev/ram0 rw
QIV Startup Script
(Almost done…) Now we need a script to tell QIV to start up automatically. There may be other ways to do this, but this worked for me. In the \rootcopy folder, create the following directory structure: root\Desktop\Autostart. Inside Autostart, create a file (or use mine) called qiv-start.sh. Here is what I put in the file:
qiv -isrtf -d 300 /boot/photos/
The number (300 in this case) is the number of seconds between photos in the slide show.
Add Your Photos
Create a directory called photos in the root of the compact flash card. DO NOT PUT IT IN THE BOOT DIRECTORY like you might be tempted to because of the qiv command line above. Trust me on this one. When SLAX boots up, the \photos directory will be “mounted” in the /boot directory. If your CF card is E:, put your photos in E:\photos. Seriously.
Put all your photos in the \photos directory. In order to conserve space, I recommend you convert your files to the resolution of your display before copying them. I describe the way I do this in my original post. My 800×600 jpg files ended up being about 150KB each, on average. After using 100MB for the SLAX OS install, that leaves room for 2500 photos on a 500MB CF card.
Plug it in, boot it up
Good luck finding the adapter to make it work for you. In the end, I couldn’t. My laptop picture frame has a funky adapter that I couldn’t identify, but I didn’t figure that out until I’d gone through all the work with the SLAX install. So in the end, I ended up getting a PCMCIA Compact Flash adapter, and putting all the pictures on that. After the system boots up off the hard drive, the slide show runs from the CF card. It is totally silent within 10 minutes of booting.