For the past year and a half, I’ve been working on software for HP’s TouchSmart all-in-one PCs. I develop and manage the deliverables for some of the tiles found within the TouchSmart software suite. Allow me to take a moment and give you a TouchSmart commercial, explain my role in its creation, and how you can develop on the platform.
Two New TouchSmarts
HP released (in October – yes, this post is a tad late) two new TouchSmarts to coincide with the release of Windows 7, the 300 and 600 series. The 600 is the more performant and larger of the two, but both retain the same touch technology and form factor. It sports the Core 2 Duo, while the smaller brother uses a 64-bit AMD processor. You can pick and choose various components for the 300 and 600 at HP’s shopping site, so be sure to check out the specs there if you’re interested in more details.
The TouchSmarts use optical touch solutions, using two infrared sensors to triangulate the positions of up to two touches. This 2-camera system presents some inaccuracies when two touches are involved, and it certainly created some challenges for my own development. These restrictions are found in all of the multi-touch all-in-ones currently in the market, as they are all based on the same technology, but our mathemagicians perform some voodoo on the data to more accurately approximate the location of the user’s fingers. It is a much more cost-effective solution when compared to capacitive touch screens, such as the iPhone’s, as the cost for that type of screen exponentially increases with surface area.
The TouchSmart software suite has seen quite a few changes itself. In case you are not familiar with the TouchSmart software for the 500 and 800 series (TouchSmart 2.0), it is a collection of touch-based applications displayed in two scrollable rows of “tiles”. These tiles are not interactive in this view, but the user can view information in each tile. To interact with the tile, the user taps on it and enters the full view of the application. You can find a video showing the framework here.
The big change in TouchSmart 3.0 is interactive tiles. The top row’s tiles have been widened and the user can now interact within each tile. Not only that, but the list of TouchSmart applications has grown beyond 20, and each of the existing applications have seen major enhancements. A video for the new framework can be viewed here.
The four applications for which I am responsible are:
Create collages and tag your photos using multitouch gestures or voice commands. I was the developer on this application, which sprung from a sample application that I wrote to show our vendors how to calculate the touch gestures. You may have seen some of the results of that sample early if you’ve been traveling through Chicago recently, as the application being demoed is using a library I wrote. Here, you can find a tutorial video (without voice commands but surely some bugs, since the video was shot far before we shipped).
Watch videos on Hulu through the touch-friendly interface of Hulu Desktop, residing in the TouchSmart framework. This application was developed by Hulu, but I manage the deliverables for it, provide technical consultation for its integration, as well as ensure it passes through our qualification process.
Twitter client for TouchSmart. If you’re into Twitter, you’ll know what’s here (it’s the standard fare for Twitter apps). If you’re not, you don’t care anyway. My responsibilities for this app are similar to my responsibilities for Hulu.
Clock application for TouchSmart. It’s identical to the TouchSmart 2.0 version, but has been updated to work with 3.0 and ported to Windows 7.
As I mentioned above, there are over 20 applications for the TouchSmart, so what I’ve done barely scratches the surface. The two teams working on the suite worked incredibly hard and have pulled off some amazing stuff. There are apps from photo editing to recipe management. For a full description of all of the applications, you can find them here.
How You Can Get Involved
You are free to create your own TouchSmart tiles if you have an idea for a touch application that would fit well within the TouchSmart framework. It is rather simple – in fact, an existing windows application can be living nicely in TouchSmart within a couple hours of development.
You can find the TouchSmart 3.0 SDK at the TouchSmart Dev Zone, a community based around TouchSmart application development. Be sure to get involved here, as there are plenty of people willing to aid you in your development, and you can submit your completed application to this site for distribution.
The biggest highlight to this new SDK is that there is now a library for WPF to help you through some of the requirements for TouchSmart applications. In it, you’ll find a Window class that will define your window with the necessary properties for a tile (no chrome, layout notifications, off-screen launching, etc). There are also helper classes for common functions (loading localized language files, creating notifications in TouchSmart, sending requests to TouchSmart, etc). Check the SDK for details and feel free to send any questions my way.
If you aren’t developing using WPF, it includes all of the information you need in order to create an application without the library.
Sound off in the comments any ideas you have for apps, as well as your interest in TouchSmart development.