Future
Because 2009 will be a busy year, there likely won't be much time to work on this project, but hopefully I'll have time in the future to make improvements.
To see what new additions are being made to the software, checkout this
blog.
Here are some use cases I'd love to explore:
Meal planningPerhaps the most interesting use case of kitchen computing to me is automated meal planning, which would draw on a database of recipes to create a healthy, tasty, cost effective meal plan. And because I have already integrated my calendar into the knowledge representation, the meal planner could even take into account your schedule.
This use case deviates from my original focus on such things as knowledge representation, language parsing, and voice interfaces, and is more of an optimization problem. The UI for this application, in my mind, doesn't lend itself very well to a voice interface, so a more typical Windows or web UI would be more appropriate.
Home automationAfter doing a little bit of research, it appears that Z-wave technology is making it realistic to remote control many household devices, such as lights, thermostats, garage doors, etc. All that is required is a USB stick for your computer, a C# API, and then Z-wave devices. Even the dimmer switch that we just bought for the baby's room appears to support Z-wave.
It would be fun to be able to control household devices via a voice interface as well as a BlackBerry interface.
Here's one clever application: Tie in my BlackBerry's GPS coordinates to Grace, and then configure it to watch my rate of speed and location. If my rate of speed is approximately that of a bicycle and I'm pedaling down our street towards home on my way home from work, open the garage door.
A lot of fun could be had with this stuff!
Update Jun12-09: I've ordered and received the USB device from
ControlThink, but I didn't quite realize how expensive the Z-wave enabled Leviton switches are. ($70 US a pop) I think I'll hold off on this aspect of things for now.
The carLet's face it, I'd love to create an in-car system, but it would be no small feat to retro-fit a car so that a PC would get audio input from the mic, play audio over the speakers, and display output on the nav console.
If this becomes reasonably easy to do in the future, I would love to implement use cases for it! Something I've realized is that using a smartphone for this may be the way to go. Cars already integrate with phones via Bluetooth, so perhaps there would be a way to send the car's microphone input to your smartphone and have it use the audio to drive a voice interface. Something tells me that this would be difficult, but if it worked, it would open the door for me to research this area as well.
Some example use cases:
  | "Tell Meredith I'll be home in 10 minutes": The computer in the kitchen might say "Daniel will be home in 10 minutes", and an email with that text would be sent to Meredith's BlackBerry. |
  | "Open an audio channel to the kitchen": Would allow me to speak and have my speech played in the kitchen, and whomever was in the kitchen could speak back so that I could hear it. |
  | "Play the ABC News podcast" to play an audio podcast through the car's speakers. |
  | "Set the temperature to 20 degrees" |
  | "Open the garage door" |
  | When you're arriving at night, "Turn the main floor lights on", or when you've just left "Turn all of the lights in the house off". |
  | When you're coming home from a trip and you're an hour away, "Set the temperature in the house to 20 degrees". |
  | The existing calendaring functions would be useful so that your calendar could be queried or edited while driving. |