Case in point: A 133Mhz photo frame

Thirty-two megabytes might be the old way of doing business, but around this house it’s more than enough to get the job done.

Looking back at the weather clock escapade, I realize I had taken on one of the more intensive projects — not a huge task of course, but there are others on my list that are more obvious, and easier to wrangle. Such as …

That’s a lowly 133Mhz Pentium, the economy-class traveler of 1998, with little more than a 12-inch screen and a cantankerous Trident video card to boast of. And it only has 32Mb of PC66 in it because I’m too lazy and too much of a skinflint to order more.

And so it’s running Debian Lenny. Out of date, yes. Out of work … not on your life. 😈

While you admire my impromptu photo frame and wonder at its magnificentness πŸ™„ , I shall give you a few details.

First, I can say up front that putting this together was definitely easier than the weather clock. I installed Debian (which only took about two hours πŸ™„ ), then added the non-free and contrib repositories.

With those two I could move from a kernel-supported wired connection to a ralink-based wireless card. Rather than play footsie with Debian’s wireless configuration — and because wicd-curses isn’t in the Lenny repos — I jammed the wireless configuration and dhclient commands straight into rc.local. Works fine, if you want to know.

After that, I added a rough slew of programs, all of which revolved around feh.

xorg rxvt-unicode xfonts-terminus mc elinks-lite htop nfs-common ntpdate rsync most unclutter

and the Openbox suite. Configuration is almost identical to the settings I used for the weather clock — autostart.sh handles all the DPMS options, almost nothing in .xinitrc, etc.

Of course, I have to rip out xserver-xorg-video-trident, because that driver causes the machine to spasm. That will remove xserver-xorg-video-all, but that’s just a metapackage, so it doesn’t matter.

Things like ntpdate and rsync and nfs-common are really only for my own convenience. This machine has no USB port, so the only practical way to get pictures on and off the machine — without burning a CD of them — is via network.

Ideally, I’d like for this to seek out a USB drive whenever one was inserted, copy the photos to the internal drive and sift through them one at a time.

To that end, this howto — although I didn’t try it — should do the trick. I suppose it could be adjusted for a CD drive, but I’m not going to burn up a dozen CDs just to try it out.

For the record, the command to get a full-screen, randomized 10-second slideshow of anything with a .jpg extension on it … is this:

feh -ZzFx -D 10 photos/*.jpg &

That at the end of autostart.sh will fork off feh into its own world, and give you the contents of the photos/ directory, one every 10 seconds.

Total cost for the project: US$10, which is still cheaper than a generic photo frame from your local big box store. And you have the added educational value of installing Debian and setting up your computer. πŸ™‚

I should say I tried doing this first in Awesome (awesome 2, to be more precise) but got a single-pixel border around the left and top of the full screen instance of feh, which sort of ruined the effect.

I also tried running it without a window manager altogether, but had trouble getting unclutter to start alongside feh, and having them both quit when feh was told to stop.

In the end, Openbox was just easier and quicker, even if it is somewhat heavier than an outdated version of awesome.

(As a side note, I should mention that awesome is quite speedy in its Lenny version. And while rollover effects (a la GTK2) on a machine this slow are a nightmare, it doesn’t suffer too badly in Debian. I will still stick with console applications any day though. πŸ˜‰ )

If I can get my hands on a decent Pentium II with a reliable video card and a USB port somewhere on it, I might try this again for fun. Of course, I suppose if I hadn’t torn apart the K6-2, it might have done this just as well. πŸ™„

10 thoughts on “Case in point: A 133Mhz photo frame

    1. K.Mandla Post author

      Ah, there’s no transition. The fade effect is the washout from a 13-year-old LCD. πŸ™‚

      As far as I know, feh doesn’t do transitions or effects. If you wanted, there might be other applications that do the same, but have effects. They would probably run a little heavier though.

      Reply
      1. Benjamin Cahill

        Ok, that makes sense, and was what I was thinking it might be. πŸ™‚

        The picture frame of which I’ve mentioned before is simply using the framebuffer (ATI Rage Mobility,500mhz,128MB ram), but if I build it again, I’ll probably use Arch (running Ubuntu right now, it was before I had gotten into Arch) and X, and find something to do little transitions, since I would think it would have the power to do so.

        And I’ll get a picture of it sometime for you… πŸ™„

        Reply
  1. Jose Catre-Vandis

    I’m surprised at you KMandla! Where’s the cli solution for this? Or is it you can’t get a framebuffer running on your machine.

    I had a crack with fbi and got a nice slideshow running with:
    (sudo) fbi -t 10 -a -u /photos/*

    (-a for autozoom, -u for random, -t for time)
    Press V to disable status line

    Reply
    1. K.Mandla Post author

      Yes, unfortunately I have two of those early Trident cards in two different machines, and it’s rare that the cards will work with the framebuffer. I can get one working with ConnochaetOS, but like I mentioned the other day, I lose a row of pixels in the process.

      And honestly, Debian Lenny’s version of X is vaguely acceptable on a machine of this era. htop is showing memory use at around 16Mb of the 28Mb that is available. Not fantastic, but not terrible. It’s an acceptable substitute for a machine that can’t do VESA 2.0.

      Reply
  2. Pingback: The problem is all inside your head, Al said to me « Motho ke motho ka botho

  3. Pingback: In praise of Debian 5 « Motho ke motho ka botho

  4. Pingback: An apology, and a eulogy « Motho ke motho ka botho

Leave a comment