Topic: Quick channel change

I'm looking for a way to quickly change channels, without the multiple steps of hitting the top button, changing channels with the control panel UI, then tapping again to exit the control panel.

Basically, my thought process is this:

I have written three widgets so far, and I use several others. They are all passive and the Chumby is great cycling through them as it sits on the table. Now I want to write a widget that will let me do some things interactively, specifically interact with my home automation server. But the whole design of cycling through passive widgets doesn't work very well when you want to interact with a specific one *now*.

I want to be able to access my interactive widget as quickly and with as few steps as possible. Then, when I'm done, it can return to passive cycle mode. When cycling, I would prefer that it not spend any time on my interactive widget at all.

So I figure I'll put my passive widgets in one channel, and my home automation controller in another. Then I just need the Chumby to switch channels. What I need is a way to switch channels more directly than going through the control panel. I'm willing to sacrifice some features (such as the tilt sensors) to do this. I'm OK if the tilt sensor is not available to widgets and becomes dedicated to my channel-change function. Using the top button would be ideal, but I gather from other threads this is tied pretty directly to the control panel, and I wouldn't want to lock myself out from getting to the control panel.

I know I can change channels with the easter egg file. I need some suggestions about how to detect a local event on the chumby (tilt sensor, touch screen, other?) which my code can monitor and then cause the channel change. I'm comfortable with Linux and Flash development.

Any ideas?

Re: Quick channel change

I would love to be able to return to the widgets (in other words, exit the control pannel) by hitting the switch.  Thus, when I got my shoutcast feed running, one click back to widgets.  When I have selected the new channel, hit the switch once, BAM back to widgets.

I haven't seen any place where the switch is operational, other then the first/last control pannel screen, where it exhibits this behavior.

Re: Quick channel change

After a bunch of investigation, I decided to use the touchscreen to tell the Chumby to change channels. I did this partially because I was able to read the touchscreen without interfering with the way the widgets use it.

So I wrote a small program for the Chumby that monitors the touchscreen and recognizes gestures, like dragging from the upper-right to the lower-left. When it detects these gestures, it writes a new channel name to /tmp/change_profile, and the Chumby goes to that channel when the current widget finishes.

It works great with the exception that it is painfully slow. In my tests, not only does the current widget need to time out, but changing channels this way adds about 20 extra seconds. So if you do the gesture at the start of a 15-second widget, you'll see the widget on the new channel about 35 seconds later. Not really the kind of responsiveness I was looking for when I'm trying to *do* something with the Chumby.

I'd really like to see some ways to make this better. Things similar to the change_profile easter egg would be great.

Perhaps:

* change profile immediately, stopping the current widget instead of waiting for it to time out
* if changing channels is always going to be slow, then it would be great to have a change_widget so that I could go to a specific widget in the current channel (which I assume is going to be faster?) Again, it would be best if this could happen immediately.
* maybe a separate timeout_now easter egg that would force the current widget to end right away, regardless of whether change_profile or change_widget were also being used?

What do you think?

Re: Quick channel change

Could you share your source for the gesture recognition?

That should be built right in!