Chumby webserver using upgraded internal storage

The Chumby One has an internal SD card offering a fair amount of storage. [Kenneth Finnegan’s] came with a 1 GB card that had about 500 MB left over which he filled with a collection of MP3s. But he wanted to do more and so installed a pre-compiled version of lighttpd to act as a web server. The problem is that this binary requires a thumb drive to be plugged in because it maps the storage directory to the mounted USB folder. He wasn’t happy with that so he upgraded the internal SD card and rolled his own webserver to run from the internal SD card.

The upgrade involved going from a 1 GB to an 8 GB microSD card. In order to run the webserver internally he needed to recompile lighttpd to use a different root directory. This meant setting up an ARM cross-compiler and eventually finding a new place for the start up script. The location change for the ‘lighty’ directory leaves us wondering if a symlink couldn’t have solve the problem without recompilation. But we don’t have the hardware on hand to try this out ourselves.

But if you want to give it a shot, check out [Bunnie’s] post about Chumby-based hardware. Looks like you can head out to the big-box store and have one in hand without shelling out too many clams.

Post navigation

12 thoughts on “Chumby webserver using upgraded internal storage”

good to see some chumby love. the chumby hacking scene seems all but dead as of late. I did something similar back when i got mine. combined the webserver with a python bittorrent client and some cgi whatnot so i could upload torrent files from a slow connection at work, and have them downloaded and ready to watch when i got home.

@JeremyC I’m sure a lot of people said “that there sure is an expensive typewriter, cause that’s all I’d ever use it for” when the first PC word processing systems came out, too. What’s the point of your comment?

@JeremyC – As a Chumby owner, it has some nice stuff to bring to the table. Ours is featured as a part of our stereo for its Pandora Radio access. For that alone, I think it’s worth the price.

I agree that it is a pretty useless alarm clock, but it has some other neat features. We also use it to check the weather in the morning, and it has a neat option to display pictures from web albums, so it works as a digital picture frame too.

I kind of love mine as an alarm clock. I have my general alarm and then pandora pick some getting up and dressed music. Weekends it plays NPR shows. The night mode shows me quotes from a rss feed and the AM it shows weather and other info. Human Clock and Human Calendar make me smile a little bit when I check the time.

It is slightly on the expensive side, I want to put it to better use and have it host COUCHdb and some home automation magic webpages to get better use of it. I expect that some day soon they will be in the $50 range and then shortly after that $20 and then $3.

But for $100 it makes me smile because it is about the same spec as my first web server back in the 90’s and $100 is nothing compared to the douchy vanity brand name watches.

He could have just created a symlink between /mnt/usb/lighty and /mnt/storage/lighty, but I am guessing he was worried about the effects that would have later on if he wanted to mount a USB device on /mnt/usb. You could make the symlink in the directory as long as there was no device mounted on it, but as soon as you mounted a flash drive, your webserver would stop working.

The mountpoint for USB devices could have been changed, but at that point you are starting to look at a rather inelegant solution. Better to take the time and do it the right way.

Here’s one more US shop (Bestbuy, linked at the article page) refusing to ship outside the US. It’s the fourth in the last two weeks, darnit!
Last time I was attempting to order a tube audio amplifier, you know, that 24th century alien technology that must remain confined over there or it would give immense technical advantages to us evil eurasians.

MS3FGX half called it. /mnt/usb is a symlink to inserted flash drives, so inserting a drive will kill the server. Additionally, /mnt/ is a tmpfs tree, so any kind of symlink would have to use the same insertion point (/psp/rfs1/) anyways, but only to link some subset of /mnt/storage/ to /mnt/usb/. Considering that setting up the ARM9 toolchain took all of 5 minutes with awk, doing the job right just seemed easier (counting the frustration in a month when some weird issue crops up, breaking my kludgey script).

And I entirely agree that the Chumby seems over-priced. It hurt to spend $120 on an alarm clock. 4 months later, I do not regret my purchase. Having Pandora available all the time is much more valuable than I expected it to be…