You know you've been drooling to playing with multi-touch apps at home, now you can with commodity hardware.
In this post we'll cover 3 things
- how to get multi-touch properly setup on the gorgeous Dell XT2 Tablet PC
- play with some multitouch apps written in Adobe AIR Runtime 2.0
- get your Flash or Flex setup to start writing multi-touch applications of your own.
Here's the short demo of it in action, from N-trig, actually with the Dell Xt2
I wonder how many times can he say scroll left and right, and zoom in an out...
As a general note, multi-touch on commodities hardware is exploding. Seems fitting for the year 2010
Gestures is like sign language , while there are some core basic ones like scroll left, right, up down (aka pan), and the pinch for zoom in and out. There are many possible ones, and growing. It's not unfortunately a standard yet. It's a collaboration between the limitations of the capture sensor (some only support 2 touchs, some like the Dell Xt2 4 points) , the driver, the OS, and the applicatino (many that aren't that aware).
Most all apps have a fallback mode to being able use normal mouse, or even in conjunction with the mouse. This is actually one of the reasons I like the N-trig solution as you can use the pen, or touchscreen (or mouse and keyboard). Many older devices like my trusty wacom and Motion Computing tablet PC only had the pen or single touch screen.
Part 1. Setup the prerequisites to run Multitouch apps on the Dell XT2 Laptop:
- A Dell Xt2 Laptop with Windows 7 Pro and Ultimate (not the Home, or XP the multi-touch doesn't work for some reason)
- the latest N-Touch drivers in the appropropriate version for your OS (beware 64 bit and 32 bit!)
- Flash Player 10.1 or greater currently in prelease (download Flash Player 10.1 here)
Getting a Dell Xt2 is pretty easy, either go to the Dell website or scout around eBay for the Dell Xt2 in the computer category current prices are (averaging $1200 depending on what you get)
You need to update the touch screen driver, The touch driver preinstalled for whatever reason, doesn't support the multitouch.
UPDATE: Go to your driver download section at Dell, Formerly you had to go to N-trigs website download the Multi-Touch for Windows 7 for the Dells that support it from N-trigs website here. (choose the leftmost blue box at the bottom for the Dell Xt2)
You'll download a zip of 2 files, the 32bit and 64bit driver setup. install the appropriate one for the OS you have (e.g. I needed the 64 bit version). Feel free to try them both if you don't know as the driver will tell you if you have the right OS or not, and simply not install if it doesn't.
Installing the Flash 10.1 Player is necessary as that's the only version of the flash player that supports the new calls for the multitouch. Note that at the time of this writing 10.1 is still in the labs, but has been working well for me on the various content I run it through.
Part 2. Play with some free multitouch apps.
With the updated drivers from step 1 you can start playing with the various gestures built in, my favorite is scrolling when browsing around the web..ironically for multi-touch webpages. I found that typing on the onscreen keyboard was a bit difficult but you can expand it's size to make it much easier.
Once the novelty of that has worn off.
Download Adobe Air2 from the Adobe labs and install it. AIR is a runtime like Java that lets you run widgets run on your local desktop and have rich interaction with the desktop and OS...like multi-touch. In fact right now if your on MacOS that is the only way you can play with the multi-touch
Then download some of the sample air applicatiosn from the labs here
They are several succinct groovy AIR apps that support multitouch with commonly seen paradigms, scatter based UI, and come with the sources!
In this classic "scatter" UI, your virtual desktop can be as messy as your real one, throw blocks with up to 4 fingers at a time with this AIR 2.0 Application "Photo Physics"
Practice the Vulcan neck pinch, with this 3 finger multitouch AIR app "Sprite Fract".
Part 3. how to build some multitouch apps of your own.
Just like you updated the Flash player, you'll have to update the flash build library with sources that contain the multitouch. This is actually easy, just one file named playerglobal.swc , which will replace the one you have.
First download playergloable.swc from the Adobe Labs.
You'll need to replace the current Flash 10 playerglobal.swc you have in your Flex. First find the path to the Flex Compiler you are currently using, then go to fr. Alternatively do a search for "playerglobal.swc"
EXAMPLE: C:\CodeProjects\Actionscript 3.0\flex3.4\frameworks\libs\player\10\playerglobal.swc
rename playerglobal.swc to playerglobalOLD.swc (just in case you need it)
OPTIONAL: if you want to make sure you've got the right one, test compile something/anything. You should get an error message like:
Execute command: compile 1 ---------- C:\CodeProjects\Actionscript 3.0\flex3.4\frameworks\flex-config.xml(54): Error: unable to open 'libs/player/10/playerglobal.swc' Loading configuration file C:\DATA_SYNC\CodeProjects\Actionscript 3.0\flex3.4\frameworks\flex-config.xml (fcsh) ----------
Then copy that playerglobal.swc you download into the same directory.
Also in your flex compiler setting you'll need to add to your command line arguments.
-target 10.1
That's it! At this point, any publishing should be able to make the connection to the multitouch.
Then you should dig into the Multi-touch api calls (and the sources for those AIR apps) and start getting used to the API's.
NOTE: that you need to update the HTML embed to minimum flash version of flash10.1, but even then MacOS users are still out of luck as the multi-touch only currently works in the AIR not webbrowser.
Update 3/8/2010 Part 4. Troubleshoot Multitouch XT2 issues
This is after a couple weeks playing with the XT2, odd things, and problems started showing up but only with multitouch:
- random clicks would happen all over the screen, at random places.Really annoying when this is randomly closing windows, hitting back/forward when browsing, and changing focus ever few seconds when typing.
- on battery power, when below <40% charge multitouch would stop working reliably. This could be really bad for using the device in boardroom settings.
Apparently the screen needs periodic recalibration, at least for the first issue that seemed to solve it.
Now the kicker is that the driver on the N-TRig site only has the recalibration tucked in the Windows 7 Control Panel> "N-trig Pen and Touch Settings", Digitizer Options Tab, "Touch Tuning" reset button.
The latest driver as of this writing, has a new Troubleshooting button as well. Useful with support.
{ 2 comments… read them below or add one }
I have the HP Touchsmart Tx2. It runs the N-Trig drivers for Vista. I hear its much better if I move to Win7, but so far the only dual touch I can do is:
1. Draw a two-finger W on my screen to start HP Media Smart. (and there is a friggen button on the screen that does it too!)
2. Pinch/spread my fingers, iPhone style, while in Internet Explorer which will zoom out the browser to the point that it looks like a postage stamp or so far in that a period looks like The Coyote’s portable hole. Thats REALLY usefull.
3. The rotate feature registers that its working, but I don’t have any apps in Vista that care.
The other touch screen features I use a ton of are not dual touch. Swipe gestures, onscreen keyboard, etc.
From what I understand, in Win7 you can use the rotate feature in windows pain. But so what? It would be great in photoshop. I’m not sure its worth the time and money to upgrade to Win7 just yet to take full advantage of my dual touch just yet. Right now it seems more cool than practical. Kinda like the iPhone.
yeah I was surprised that the Touchsmart only supports 2 points, and the dell only 4 points. Not very multi on the multitouch!
They are working on the photoshop multitouch saw a video of it. Will it be that useful? who knows. I’d like it in flash but only rarely.
I skipped vista
but totally right about most apps being cool than pratical, in my case the client I’m using it with does have a very good use for it.