This page has a bunch of my Chumby projects, here's quick links to each:

Chumby Thoughts

ChumbySpy (random security cams from Chumby)

Chumby Jukebox (college and community radio on a Chumby)

ChumbyRemote (control Chumby from Windows)

My interface for internet radio via SSH for Chumby

Webcam Template (easy way to build simple webcam apps)

 

 

Chumby Thoughts

I got a Chumby the other day (February 2008) and have to say I love it. It's a tiny computer, about the size of a very small purse, and its built into a beanbag, which is smart because it makes the fact that the screen is about the size of a digital camera's seem intentional. But the features are great: touchscreen, acceleromater, wifi, usb ports, sound output...

Far and away the best feature is the philosophy that produced it. I'm so used to dealing with companies that fight against people using their products in unintended ways. For example, Canon just changed the way their firmware loads onto their cameras solely to derail the CHDK 3rd party firmware project. Crazy! You'd think companies would want people to add new features to their products for them. But alas.

Anyway, Chumbies feel like sanity. The people giving tech support are hackers themselves, and they encourage you to do odd things with your gizmo. And I'm all about doing odd things with gizmos. Poking around the control panel today I found a hidden screen with the words "We believe in the users". Nice.

That's not to say they don't have their problems: there's a big whiff of Web 2.0-style VC funding going on, so the company is pretty protective of their image, which translates to only letting people post very limited programs on the Chumby website. But that's ok because they invite you to do whatever you want outside of their site so I guess I shouldn't complain too much.

Update: after playing with it for a couple of months (April 2008) I have to retract a little of the above praise. In my opini0n they're overly concerned about security and so restrict the "widgets" from most of the functionality of the Chumby. For example a widget can't play internet radio stations, even though its easily feasible. I questioned this decision on the forum and they said "well I wouldn't want some widget maker to, for example, play a really loud noise". In my opinion that just isn't a big enough concern to get rid of this functionality, and its probably why, to be honest, almost all the widgets for the Chumby are pretty much useless. But you can still hack your Chumby in non standard ways, the only downside is you can't easily share these apps. In other words, you can do lots of things with your Chumby, but if you want your hacks to be sharable, your stuck with their very limited framework.

And I guess another downside is that, for a project that prides itself on hacking and sharing, there's very little sharing of sourcecode. This would be so easy to fix: just have a field in the interface where people upload their widgets for them to upload the sourcecode with the widget. But I have a feeling they're not doing that because they're worried about some security issue. Bah.

ChumbySpy!

I made my first "widget" for the Chumby, which you can see on their site (or in a popup). Its called ChumbySpy and it tunes into random Axis security cameras, which have a unique file pattern and so are searchable via Google. ChumbySpy displays a random camera somewhere in the world for 15 seconds and then moves onto the next one. Very surreal watching some mall security camera in what looks like Japan on this little beanbag computer. Another good one is the doggy daycare center cam.

Here's a funny one: below left is the original logo I used for ChumbySpy. Note the Chumby logo at the top left. Before they'd post it on their site they made me remove that, so I replaced it with the one on the right. Sheesh.

    

This just in: my widget made the official Chumby blog... Ahead of the Washington Post even... Multinational media conglomerates have nothing on ChumbySpy...

Using ChumbySpy

Here's some notes on using it. If you're using it in a webbrowser as opposed to on a Chumby, substitute "click with your mouse" for "touch":

- Touch the crappy "?" icon at top right to see some options. There you can toggle autocycling (moving to the next camera automatically after 15 seconds), randomizing (moving to a random camera next), and showing the URLs of the cameras at the bottom of the screen.

- A couple of these options are accessible through hidden shortcuts: touching the top left of the screen toggles autocycling so you can easily stop autocycling if you see something interesting, and touching the bottom of the screen shows/hides the URLs.

- Touch the center of the screen to force a camera reload.

- Touch left and right of the screen to go to previous and next camera.

I'm always finding new favorite cameras, but my current favorite is some sort of walrus tank.

Source code is here.

 

Chumby Jukebox

Chumbies make great internet radios, but alas the public widgets (programs you can download to the Chumby through the official Chumby interface) are crippled to the point that they lose this bit of really handy functionality. Oh well, at least it works well with "local widgets", meaning widgets that you load on the Chumby y0urself, as opposed to through their website's widget interface. Works just fine with a bit of extra work.

So here's Chumby Jukebox, a handy dandy easily accessible list of college and community radio stations from around the world:

Click any station to play it, and you can scroll through the pages of stations with the arrows. There's volume controls on the last page. If you were looking at this on a Chumby you could also tilt the Chumby towards you to lower volume, away from you to raise it, and give your Chumby a gentle slap to toggle mute.

I find this much easier to use than the stock internet radio widgets, which all require multiple clicks to play a stream. And all 40 or so stations are 100% pure commercial free college and/or community radio goodness, and mostly high bitrate.

Download it with source code here.

Here's a couple of notes on loading local widgets onto the Chumby:

1) Copy jukebox.swf to a USB key and insert in your Chumby
2) SSH into your Chumby and stop the control panel by typing stop_control_panel (see here for notes on this)
3) cd /mnt/usb
4) chumbyflashplayer.x -i jukebox.swf

As of typing this (April 3, 2008) I'm trying to figure out how to integrate a local widget with the regular Chumby channels, but the posted example doesn't seem to work, at least for me.... Hmm.


 
ChumbyRemote

To me the best thing about the Chumby is its ability to tune in to streaming internet radio. It has an audio out jack so you can plug it into a stereo, but oddly enough its little speakers sound just fine while I work. I kept needing to adjust the volume, so I made a little program that I'm calling ChumbyRemote. It doesn't do much: it runs on my computer (Windows) and loads a radio station and controls the volume of the Chumby. Note that it can also control Winamp if you select Winamp from the pulldown at the bottom of the window, so I guess it could be useful even if (gasp) you don't have a Chumby. It pulls its radio station list live from radiogizmo.org.

Update: it can now also make your Chumby (or Winamp) speak a phrase via TTS.

You can see a screencap here. Note that you can turn off the hanging guy in the configuration file. Here's a thumb of the screencap:

Also note that since it's controlling the Chumby via SSH, it's super slow. Like about 3 seconds before the Chumby reacts kind of slow. But that's ok for my use, at least for now.

And note that this is definitely buggy... I made it in a couple of hours as a goof and didn't iron things out. I'm told it doens't work on Vista, and if it doesn't work at all, try manually puttying into your Chumby to set the keys.

Using ChumbyRemote

The first biggie is you need to tell ChumbyRemote the IP of your Chumby. For now just try to send a command to your Chumby, it'll time out and should open c:\program files\ChumbyRemote\configuration.ini, where you'll enter the IP address. There's instructions in the ini file for doing that, but it's in the same place as turning on SSH, which is the next step.

The other biggie is you need to enable SSH on your Chumby by tapping Settings --> Chumby Info --> then tap that tiny Pi symbol at the top right and click SSHD. You can make it so this always starts up by following the instructions here.

And you can make it so the ChumbyRemote window isn't "always on top" in the configuration.ini file.

And if you're going to use the text-to-speech part, you need to make sure you don't have a firewall blocking port 80, since it uses a webserver to communicate with the Chumby.

And if you have Winamp installed, select "Winamp" from the pulldown at the bottom and you can make Winamp talk and play radio stations.

If you have problems, go to c:\program files\ChumbyRemote and run the ChumbyRemote-Debugger.exe, which will run with a console window and hopefully give some idea about what's going wrong. If the window just opens and closes, maybe run it from a command prompt. Feel free to email me with any issues.

Download

ChumbyRemote Installer

Email questions / suggestions

 

Internet Radio on the Chumby from SSH

Chumby can play internet streams from SSH, but you have to give Chumby the URL of the actual stream, which can be really long and hard to find, not to mention hard to remember. So I made a little interface to my radiogizmo.org database of internet and college radio stations that works like this from a Chumby SSH session:

btplay http://radiogizmo.org/chumby/wfmu

The above would play wfmu. This plays a random station from the database:

btplay http://radiogizmo.org/chumby/random

You can see what stations are in the database by going to radiogizmo.org.

Parenthetically, you can control the volume through SSH like this:

chumby_set_volume 100 (to set volume to 100)

chumby_set_volume 10 (to set volume to 10)

Here's instructions to enable the Chumby's SSH server at startup.

You can find the IP addy of your Chumby by going to Settings --> Chumby Info.

 

Webcam Template for Chumby

As of typing this (March 2008) the sample webcam application posted on the Chumby site a) uses a really archaic method to load the webcam images, and b) doesn't even work since it doesn't defeat caching of the images. So I made this template file so people don't have to reinvent the wheel if they want to make a webcam app for the Chumby. It uses a listener to load the images as fast as bandwidth will allow. Note that it also works just fine independent of Chumbies.

 

<<< back to Gizmoware.net