Fingerworks Touchstream

I mentioned the Touchstream in my intro, and @merlin had some questions, so rather than hi-jack the introduction thread, I’m starting a separate topic here.

One of the first things that drew me to the Touchstream was its Programmer’s Punctuation Pad, which was also my first introduction to the idea of using multiple layers on a keyboard, beyond what you get from the shift key. I found a mirror of Fingerworks’ site that shows the layout - you may have to zoom in. The symbols in the lower right corner of the right half keys are what I’m referring to.

One of the other things that was so great about this keyboard is that it was the first true multi-touch device (the inventors were eventually bought out by Apple, and you’ve seen their work). Touching with a single finger gave you typing. Two fingers on the right half was mousing, on the left half was arrow keys, with acceleration proportional to the speed of the gesture. There were a variety of chorded gestures - tapping thumb & two fingers on the left side enabled the punctuation pad. Tapping four fingers on home row was shift, above was ctrl, below was alt, and tapping four fingers on both home rows was single-word capslock (which reminds me, I need to figure out a plugin or macro to do that, because it was GREAT for … well, things like that, or for any variables that were ALL_CAPS). Three fingers on both sides at once was ESC. It was also smart enough to detect (with remarkably little error) which two fingers you were tapping. More gestures… Resting all five fingers on the board was a null-input, so you didn’t have to keep your hands hovering all day.

As you might be able to tell, I still miss using this input device, which was so much more than just a keyboard. In the end, the lack of tactile feedback was the deal-breaker for me. One too many times, I ended up with a stray character in the middle of a source code file that caused a compile error. Oddly enough, the change from centralized version control to hg/git was the final straw - before, I had my IDE set so that I had to manually check out a file, and until I did, it was read-only, which gave me a chance to catch any stray characters that might otherwise have caused problems.


It was also the first keyboard I ever saw that had an on-device textmode config system. You hit a magic combo and it printed a menu that you could interact with.

Sounds like the sort of thing I am working to support through my Papageno plugin.
Edit 1: Papageno can help you with the four finger tap, not the single word caps.

which is still work in progress. See also


I hope you don’t mind a bit of an off-topic answer here…

Off the top of my head, a one-shot shift double tapped, and a small eventhandler hook that cancel it at word boundaries would do the trick. Something along these lines:

Key wordCAPSHook(Key mapped_key, byte row, byte col, uint8_t key_state) {
  if (!keyToggledOn(key_state))
    return mapped_key;

  switch (mapped_key.raw) {
    case Key_Space.raw:
    case Key_Enter.raw:
    case Key_Dot.raw:
    case Key_Comma.raw:
    case Key_LeftShift.raw:
    case Key_RightShift.raw:

Add any other word boundaries you wish. May need to make it a bit more clever, because this would cancel the word-caps at _ in ALL_CAPS. Oh and… I need to fix a bug first, to make this work. But afterwards, this may be one possible approach!


I forgot to mention that it’s already there for QMK. See my fork of QMK

The QMK PR is unfortunatelly pending for quite a while

And here is my QMK layout that exemplifies the usage


I’d love to have a single-word shift-lock — not CapsLock, because of _ — which should deal with this problem, because it wouldn’t be necessary to press shift for that _.

The tricky thing for me would be interactions with shift-swapped symbol keys…


Another thing to watch out for is making sure it’s still possible to get shift+space, et cetera, using OneShot, and (if desired) using locked shift.

z[quote=“kajsa.anderson, post:1, topic:774”]
As you might be able to tell, I still miss using this input device, which was so much more than just a keyboard. In the end, the lack of tactile feedback was the deal-breaker for me

The lack of feedback was the dealbreaker for me as well, I had an early model Touchstream. (Late 90’s or early 2000ish? I forget). It wasn’t nearly as sophisticated as this. The pad was just a rectangle flat on the desk and the layout was slightly narrower than the standard keyboard and the keys were cramped together in straight rows. It supported simple mouse gestures that were intuitive. The keyboard surface was dead flat and touch typing was almost impossible because I couldn’t feel where the keys were. I really tried to make it work, because I wanted to be able to rest my forearms and wrists flat on the desk.

ETA - it was the mini pad, but it was the most Touchstream I could afford at the time…

1 Like

Just wanted to point out, that my suggestion of Papageno was because of the mentioned multi key taps (tapping four fingers on both home rows) to trigger some action.

Papageno cannot not deal with single word caps.

The Fingerworks Touchstream is a crazy keyboard and it sits right in my shelf.
I used to type with it, but - as already mentioned - it was hard to “stay on the keys”.
You could easy wander off the correct line and starting to type other characters than expected.

The “keyboard is also touchpad” is great for switching from typing to mouse actions.
And the modifiers via multi finger gesture is awesome.

1 Like

Lucky you — we haven’t seen the ground in Winnipeg since November 4. :cloud_with_snow:

I considered trying one, and gave up the idea when I saw how limited it was.

I’m not familiar with the Touchstream. Can you tell us about that Punctuation Pad? I’m intrigued.

I still miss, to this day, having a touchstream built in to my laptop. It was the best thing ever, and I tore apart many laptops in order to wedge in my aging MacNTouch board over the years, until I finally had to upgrade to a Mac that didn’t have a removable keyboard anymore.

My favorite weird Touchstream trick was that you could map circling a key. Like, running your fingertip in a circle around where the “key” was on the keyboard, and that would run an arbitrary macro. I vaguely recall I had configured a specific secret key to type my password at the time if you did the right circling gesture around it.

And my second favorite weird trick was that you could move the keys by dragging and dropping them in the configurator. I definitely moved some of the harder to reach keys closer in so that I didn’t have to stretch my hands out as much.

I miss the chords for enter and mods. There was an early firmware version that moved the keys for you when it detected hand drift but people found it way too confusing.

The amount of customization that the Touchstream allowed was phenomenal, and really set the bar for me as far as what can be done with software/firmware. I had forgotten about the circling a key gesture, but I did make my own use of the hidden keys to map things like IDE suggestions & autocomplete.

I guess the Touchstream must have been part of the inspiration for MessagEase — that’s what I use as my “keyboard” on mobile devices, and it also makes use of the circling guesture.

1 Like

MessagEase - that’s the solution to a problem I didn’t know I had. Thanks.

1 Like

I still have my Touchstream LP, in nearly mint condition. It sounded like a great idea, and I loved the gestures and mouse integration, but it was never any good for actually typing on. I tried, really really tried, but it just didn’t work out.

Eventually I went back to my HHK, which I used until I was literally wearing through the keycaps.

I could never get used to the Touchstream, but I still have two FingerWorks iGesture touchpads which are the only mice I can use for long without my hands seizing up. They still leave the majority of modern pointing devices for dead in terms of their flexibility and configurability.

1 Like

I wish I had gotten those when they were still available.

1 Like

Oh yes. The TouchStream is super flexible, but I also hat my problems to type on it. As there are no keys (just a flat surface) it was hard to stay on the line. I used to drift away slowly and that made typing hard.
But the gestures were awesome! Just put your finger down where they were and make a gesture.

I might give it another try … :thinking:

1 Like