Ok, so I finally have a Twiddler, only took 4 days to pay for it and another week to ship
I'm excited... but. The arrangement of keys and chords is alphabetical. It should be Zipf-y, at the least, and somewhat smarter than a normal keyboard at best. So before I start monkeying with my muscle memory, I'm going to want to edit the mapping.
Ideally, characters should be mapped by three criteria: frequency of use, ease of chord, and functional clustering. This means that I'll want letters, numbers, functions, and symbols separated logically, and then mapped to the keys and chords that are easiest to hardest based on frequency of occurrence in the target language. I'll also want to make sure pairs are covered, so there's no tripping over chords for common 2 letter combinations.
Fortunately, for English we have this: https://en.wikipedia.org/wiki/Letter_frequency
e,t,a,o,i,n,s,h,r,d,l,c,u,m,w,f,g,y,p,b,v,k,j,x,q,z
Next up, punctuation. We have a nice source here: http://www.viviancook.uk/Punctuation/PunctFigs.htm
I used a list of every non letter symbol a keyboard is capable of and ordered it by frequency listed on that site, and then arbitrarily with a nod to frequently occurring URL characters.
{space} , . - " ' ; ? : ! ` ~ = + @ / \ # $ % & * ^ _ [ ] { } | < >
And now, numbers. We want a logical, no frequentist, incremental distribution of numbers, so:
0 1 2 3 4 5 6 7 8 9
And then function keys. These will be grouped logically as well.
f1-f12 , caps/num lock , insert, printscrn, pause/break, del, home, end, pg up , pg dn, u/d/l/r, esc, return
So I have a decent idea of what needs to be mapped. I'm going to do a little digging into keyboard APIs and get a well laid out chart put together, and then work on the tuner.
I think a clickable touchpad may be in order, but I'll save that discussion for another post. The joystick is , well, meh. So far. Maybe it'll grow on me.
Thanks for a great product! This should be a fun ride.