I bought 2 teensy boards, $18 each, $42.60 total including postage. I modified
the USB Chordite code to run on the teensy's atmega32u4 processor and downloaded
the hex file to a teensy board. All I did is remove the stuff that pertains to
at90usb1287 features that the smaller atmega32u4 doesn't support, like host
mode.
The teensy enumerates as it should: a combined keyboard and mouse (a USB
compound device). Also if I short individual input pins to ground it produces
the appropriate characters on the screen so I'm tempted to declare victory.
However I've had surprises before at this point so I'll hold off until I get it
connected to a proper handset.
That will take a bit longer but I don't foresee any big problems. I want to try
a slightly different mechanical design. I'm aiming at a DIY prototype with
folding braces that really can go into a pocket. The teensy board makes that
possible.
Of course I'll publish all the details asap. Maybe offer a kit.
It has been brought to my attention that this
http://www.pjrc.com/teensy/
might be a better choice than the at90usbkey board. I've bought a couple and
will try it out as a Chordite. It's smaller (only 1.2" by 0.7") and cheaper
($18) than the at90usbkey.
Another mouse citation at Slashdot:
http://www.openofficemouse.com/pr110609.html
It's not crappy but it's ... what. Puzzling I guess. It's an 18-button mouse
with software that supports Open Office applications.
As such it strikes me as an extreme form of hot keys. It also seems like that
by the time you learn all those buttons you could have learned to chord it into
a full keyboard.
This collection of dumb pointer patents was cited today on Slashdot. I am
pleased to report I did not get included. Truly, 99.9% of all patents are
completely worthless.
http://technologizer.com/2009/08/05/mouse-patents/
I have finally consolidated my instructions for building a USB Chordite
prototype into a zipped kit anyone can download at chordite.com.
For some reason the new firmware within it, series6-Chordite.hex, which is also
available in the files section of this Yahoo group, fixes what I've been calling
the contact bounce problem in the Omron SS-01GL13-F switches. My best guess is
that this has something to do with changes in Atmel's USB code. Whatever, I
must now retract the bad things I've been saying about those switches, provided
you use the new code.
For the record, there is one slight problem with the Bequaert algorithm that
arises due to our expectation about autorepeating --- that a held chord produces
a string of characters as a held key does on a qwerty.
If a multi-key chord is entered by pressing one key at a time _very_ slowly,
there is a possibility that before all the desired keys have accumulated, the
partial chord entered so far will be taken as a held chord and autorepeat. The
solution of course is to set the timer for recognizing "held" such that this
does not happen. Thus the Chordite code provides a slightly longer delay than a
qwerty will exhibit before autorepeating begins.
=============================================
--- In chordite@yahoogroups.com, "John McKown" <john_3000@...> wrote:
...
> The code works like this. You're either in chord forming mode or
> chord releasing mode. Forming mode starts when any key closes. You
> stay in forming mode while other keys perhaps close; forming mode ends
> (and releasing mode starts) when a closed key opens (which is when
> the cord is read). Releasing mode, of course, ends when any key
> closes to send you back to forming mode.
>
I neglected to add that the hex file itself, namely
series6-Chordite.hex
is also now in the files section for the benefit of those who don't care about
all these source manipulations.
========================================================
--- In chordite@yahoogroups.com, "John McKown" <john_3000@...> wrote:
>
> Today I put into the files section of this Yahoo group a new patch, namely
> usb_chordite_6.patch
>
> and step-by-step instructions on how to use it, namely
>
> source_directions.txt
>
> to convert current ("Series 6") Atmel demo source code into USB Chordite
source, then compile that source and download the resulting executable into the
at90usbkey board. Then all you have to do is build a handset and wire the
switches to Port B as discussed elsewhere.
>
> Hopefully before too much longer I will pull all the USB stuff together into
one zip file like the one for PS/2.
>
Today I put into the files section of this Yahoo group a new patch, namely
usb_chordite_6.patch
and step-by-step instructions on how to use it, namely
source_directions.txt
to convert current ("Series 6") Atmel demo source code into USB Chordite source,
then compile that source and download the resulting executable into the
at90usbkey board. Then all you have to do is build a handset and wire the
switches to Port B as discussed elsewhere.
Hopefully before too much longer I will pull all the USB stuff together into one
zip file like the one for PS/2.
This note is only for people who care about the source for my executable hex file for the at90usbkey demo board, namely Chordite004.hex. Those who are content to just load the hex file and go can/should ignore what follows.
Atmel has been rearranging their site and some of the URLs in note 339 have mutated. The Atmel sof tware seems to have evolved as well. As of today
The links in note 339 now take you to .pdf manuals for the demos, not code. Originally I think they had a mouse for the at90usbkey and a keyboard for the stk526. Now it appears that's been reversed (that or I've lost some more neurons). Look near the bottom of the page for what I believe to be most relevant to anyone who wants to follow the coding path described in note 339.
USB HID Mouse for STK526 Software
(revision 2.0.3)
USB HID keyboard for STK525 and AVRUSB Key Software
(revision 2.0.2)
--- In chordite@yahoogroups.com, "John McKown" <john_3000@...> wrote:
>... FLIP 3 ... mouse demo ... keyboard demo ...
> So now the project looks as follows. > > (1) Combine the 2 demos to make a mouse+keyboard demo that runs on the > 'key board. This is a USB compound device with 2 interfaces. > (2) Replace Atmel's keyboard part (which merely prints a canned message > when you punch the joystick button) with Chordite keyboard code. > (3) Replace the mouse demo part with the mouse Chordite part ...
On Fri, May 15, 2009 at 9:13 AM, Tony Godshall<togo@...> wrote:
> On Thu, May 14, 2009 at 2:51 PM, John McKown <john_3000@...> wrote:
>>
>>
>> Tony you might take a look at this:
>>
>> http://www.aboutonehandtyping.com/introduction.html
>>
>> She makes some interesting points about typing at desks. She claims that in
>> the time it takes you to learn any special one-hand keyboard or pad she can
>> teach you to be just as fast with one hand on standard qwertys. Then you
>> don't have to take your special keyboard around with you from desk to desk.
>> I'm not sure Bluetooth makes that much easier.
>>
>> If you'll be staying at your own desk typing on a keypad you might be
>> interested in Mr.Henry Williamson's "WOW!Keys." Only $50 with a free 15-day
>> trial
>> http://numerickeypads.com/
>
> Thanks for the info. But I'm not really interested in a solution
> that's only for desks. I want to start with something anyone can use
> and try out with no unusual hardware requirements now and adapt to
> wearable without relearning the muscle memories. as mobile computing
> hardware improves to the point where it is practical to do what I want
> to do without being tied to a desk. What I want to do is work on a
> chording + audio UI for some common tasks and if I come up with a
> killer app I need on the go, and can implement in short order, shift
> that to mobile. I do have one in mind, which is listening to audio
> files and taking notes on them.
>
Hi again
Wow!Keys[1] is only for Windows but the photo of the guy at
http://numerickeypads.com/ wearing a numeric keypad at his hip
certainly make wearable use look practical. They say for example that
a wireless numeric keypad makes a great remote control for example.
I think I'll move toward adopting their chords in custom linux driver
kernel and X11 keymaps adapted from the onehand guys[2]
The Wow!Keys page has an animation for the chords for A-Z. Anyone
know what the chords are or where I can find the chords for the rest
of the keys to in a 104-key keyboard?
I'm tempted to download a copy and try it but I have no idea how
reputable the site is- everyone knows running .exe files from
mysterious websites is a recipe for infection...
Tony
[1]http://numerickeypads.com/
[2]http://eklhad.net/linux/app/
On Thu, May 14, 2009 at 2:51 PM, John McKown <john_3000@...> wrote:
>
>
> Tony you might take a look at this:
>
> http://www.aboutonehandtyping.com/introduction.html
>
> She makes some interesting points about typing at desks. She claims that in
> the time it takes you to learn any special one-hand keyboard or pad she can
> teach you to be just as fast with one hand on standard qwertys. Then you
> don't have to take your special keyboard around with you from desk to desk.
> I'm not sure Bluetooth makes that much easier.
>
> If you'll be staying at your own desk typing on a keypad you might be
> interested in Mr.Henry Williamson's "WOW!Keys." Only $50 with a free 15-day
> trial
> http://numerickeypads.com/
Thanks for the info. But I'm not really interested in a solution
that's only for desks. I want to start with something anyone can use
and try out with no unusual hardware requirements now and adapt to
wearable without relearning the muscle memories. as mobile computing
hardware improves to the point where it is practical to do what I want
to do without being tied to a desk. What I want to do is work on a
chording + audio UI for some common tasks and if I come up with a
killer app I need on the go, and can implement in short order, shift
that to mobile. I do have one in mind, which is listening to audio
files and taking notes on them.
Tony
On 14/05/2009, Tony Godshall <togo@...> wrote:
>> Very interesting
>>
> > http://www.iu.hio.no/~frodes/numpad.html
> >
> > For my own purposes, I think I'd like to see a one-handed version of
> > this. Ideally I'd like to tie it to a specific USB numeric keyboard
> > (the serial number is easily probed) so I can carry one of those
> > little laptop keypads and plug it in to any one of my computers and be
> > able to do left-hand-type right-hand-mouse. Or right-hand-type
> > left-hand-touchpad. Whatever works better.
> >
> > Anyone know how to make a custom keymap? I'd like one that would work
> > both in X11 and in console but am not sure where to start. I use
> > Ubuntu and Debian.
> It is possible to change both the Linux console and the X server's key
> mappings. You can search around a bit regarding 'loadkeys' and
> 'xkbcomp', both standard utilities. Karl Dahlke has done the work
> already for one-handed typing, though, so you can get his solutions at
> http://eklhad.net/linux/app/onehand.html .
Outstanding! Thank you, Richard. I've been looking for that, on and
off, for many months.
Best Regards.
Tony
It is possible to change both the Linux console and the X server's key
mappings. You can search around a bit regarding 'loadkeys' and
'xkbcomp', both standard utilities. Karl Dahlke has done the work
already for one-handed typing, though, so you can get his solutions at
http://eklhad.net/linux/app/onehand.html .
Richard
On 14/05/2009, Tony Godshall <togo@...> wrote:
> Very interesting
>
> http://www.iu.hio.no/~frodes/numpad.html
>
> For my own purposes, I think I'd like to see a one-handed version of
> this. Ideally I'd like to tie it to a specific USB numeric keyboard
> (the serial number is easily probed) so I can carry one of those
> little laptop keypads and plug it in to any one of my computers and be
> able to do left-hand-type right-hand-mouse. Or right-hand-type
> left-hand-touchpad. Whatever works better.
>
> Anyone know how to make a custom keymap? I'd like one that would work
> both in X11 and in console but am not sure where to start. I use
> Ubuntu and Debian.
>
> Best Regards.
>
Tony you might take a look at this:
http://www.aboutonehandtyping.com/introduction.html
She makes some interesting points about typing at desks. She claims that in the
time it takes you to learn any special one-hand keyboard or pad she can teach
you to be just as fast with one hand on standard qwertys. Then you don't have to
take your special keyboard around with you from desk to desk. I'm not sure
Bluetooth makes that much easier.
If you'll be staying at your own desk typing on a keypad you might be interested
in Mr.Henry Williamson's "WOW!Keys." Only $50 with a free 15-day trial
http://numerickeypads.com/
=========================================
--- In chordite@yahoogroups.com, Tony Godshall <togo@...> wrote:
>
> I wrote:
> > ... For my own purposes, I think I'd like to see a one-handed version of
this. Ideally I'd like to tie it to a specific USB numeric keyboard the serial
number is easily probed) so I can carry one of those little laptop keypads and
plug it in to any one of my computers and be able to do left-hand-type
right-hand-mouse. Or right-hand-type left-hand-touchpad. Whatever works
better. ...
>
> John's other message made me think I should address why do this
> instead of a proper chordite.
>
> 1. easily hackable. no need to mess with microcontrollers and
> programming them- someone with a soldering iron can replace switches.
> someone with mechanical skills can remove the plastic bits and add
> levers. if I or we comes up with a keymap/driver, you just install
> the driver to your desktop OS (Ubuntu or whatever). Lots of people
> know how to do that. Way more than can tackle getting an Atmel,
> getting the Atmel programmed, and troubleshooting it.
>
> 2. cheap. leads to easily hackable.
>
> Best Regards.
> Please keep in touch.
> This is unedited.
> P-)
>
>
>
> >
> > Best Regards.
>
I wrote:
> ... For my own purposes, I think I'd like to see a one-handed version of this.
Ideally I'd like to tie it to a specific USB numeric keyboard the serial
number is easily probed) so I can carry one of those little laptop keypads and
plug it in to any one of my computers and be able to do left-hand-type
right-hand-mouse. Or right-hand-type left-hand-touchpad. Whatever works
better. ...
John's other message made me think I should address why do this
instead of a proper chordite.
1. easily hackable. no need to mess with microcontrollers and
programming them- someone with a soldering iron can replace switches.
someone with mechanical skills can remove the plastic bits and add
levers. if I or we comes up with a keymap/driver, you just install
the driver to your desktop OS (Ubuntu or whatever). Lots of people
know how to do that. Way more than can tackle getting an Atmel,
getting the Atmel programmed, and troubleshooting it.
2. cheap. leads to easily hackable.
Best Regards.
Please keep in touch.
This is unedited.
P-)
>
> Best Regards.
2. more hackable. there are many cheap models so it should be easy to find one that is amenable to replacing switches, adding a lever for mechanical advantage. For the price of one frogpad I can destroy, what, 10-20 usb keypads? Plus there are a slew of old full keyboards in closets and garage sales everywhere.
3. distributable/sharable (once one person figures out how to do it anybody with a numeric keypad can do it.)
Sorry I didn't mention these in the original post- I thought they were obvious. But then again, I clearly demonstrate time and time again that I have very little idea about how other people think. Especially those of of opposite gender or political affiliation. But we won't get into that here. ;-)
Best Regards. Tony
On Thu, May 14, 2009 at 7:53 AM, John McKown <john_3000@...> wrote:
Very interesting
http://www.iu.hio.no/~frodes/numpad.html
For my own purposes, I think I'd like to see a one-handed version of
this. Ideally I'd like to tie it to a specific USB numeric keyboard
(the serial number is easily probed) so I can carry one of those
little laptop keypads and plug it in to any one of my computers and be
able to do left-hand-type right-hand-mouse. Or right-hand-type
left-hand-touchpad. Whatever works better.
Anyone know how to make a custom keymap? I'd like one that would work
both in X11 and in console but am not sure where to start. I use
Ubuntu and Debian.
Best Regards.
It's out the side. I have no clips. It looked to me like it either comes out the
side of the connector or it comes out the side of the clip so I didn't (& still
don't) see the point of using clips if the the whole thing is going to dangle.
It's just more weight, I thought. While dangling the connector is cocked such
that the cable doesn't get bent sharply at the connector.
Experience suggests I may be missing something.
Everyone else, this is the sort of thing we're talking about:
http://reprap.org/bin/view/Main/MakeIDCCable
===========================================
--- In chordite@yahoogroups.com, "microsuffer" <microsuffer@...> wrote:
>
> Did you install the strain relief clip or is the cable projecting out the
side?
Did you install the strain relief clip or is the cable projecting out the side?
Microsuffer
--- In chordite@yahoogroups.com, "John McKown" <john_3000@...> wrote:
>
> A few days ago one of my keys stopped working so I replaced it only to find
the new one didn't work either; the problem was in the wiring. I use
10-conductor ribbon cable to connect the keys to the circuit board. A ribbon
cable connector (pair) dangles between the keyboard and the PCB.
>
> One of the 10 conductors had broken invisibly inside its plastic sheathe right
at the connector. So ribbon cables aren't supposed to be constantly bending and
moving around. Too bad, I'll keep using them because they're handy. The
solution was to pry apart the connector, remove the cable from the little teeth
and reassemble the connector a half inch farther up the cable.
>
> Every time something breaks like that and I have to use a qwerty until it's
fixed it reminds me how much I prefer my chordite.
>
A few days ago one of my keys stopped working so I replaced it only to find the
new one didn't work either; the problem was in the wiring. I use 10-conductor
ribbon cable to connect the keys to the circuit board. A ribbon cable connector
(pair) dangles between the keyboard and the PCB.
One of the 10 conductors had broken invisibly inside its plastic sheathe right
at the connector. So ribbon cables aren't supposed to be constantly bending and
moving around. Too bad, I'll keep using them because they're handy. The
solution was to pry apart the connector, remove the cable from the little teeth
and reassemble the connector a half inch farther up the cable.
Every time something breaks like that and I have to use a qwerty until it's
fixed it reminds me how much I prefer my chordite.
Switches are $1-$2 each. Only a few of those listed
could I find in small quantities.
The AT90USBKEY is $30
Wire, connectors, a few $ each.
One thought about switch force. If it is high 50-70 gm or more
then as you press several (~>3?) switches, the frame tends to
flex a bit in the hand. I don't think that is optimal.
Either more rigid or less switch force, would help.
Most chords are not 4 or more key presses of course.
My frame is wire coat hangers so not too rigid. I have not wired it
up yet. It doesn't stably sit at the base of my fingers as John's
does, (or as it appears to). I may extend a brace towards the thumb,
so it sits more in the crotch of the thumb, which certainly feels more stable.
--- In chordite@yahoogroups.com, "John McKown" <john_3000@...> wrote:
>
> The instructions in the group description are still current,
with the single caution that the SS-01GL13-F switches mentioned
in the referenced notes are now out of favor. I'd say $100
ought to cover everything.
>
Ah, 370 seems to be one I wrote. Good thing I went to yahoo and checked.
I have two arduinos hand have progressed only as far as making them
blink LEDs. When I have more time... :-/
Best Regards.
Tony
On Mon, May 4, 2009 at 8:06 PM, Steelwolf <kaos.one@...> wrote:
>
>
> Just finished working my way through the archives.
>
> Just to establish a good starting point, am i correct in guessing that the
> instructions in the description are still current?
>
> Also wanted to know if anyone had looked any further into the arduino boards
> as referenced in note 370.
>
> Lastly (at least for now) does anyone have a ballpark figure as to roughly
> how much the board, switches and such as that end up costing? (not worried
> so much about the cost of the frame, as i have a few ideas already
> concerning this.)
>
>
Thanks very much, will have to knock a few priorities out of the way before i
can start this then, but hopefully i'll be back in touch before too long :)
The instructions in the group description are still current, with the single
caution that the SS-01GL13-F switches mentioned in the referenced notes are now
out of favor. I'd say $100 ought to cover everything.
Just finished working my way through the archives.
Just to establish a good starting point, am i correct in guessing that the
instructions in the description are still current?
Also wanted to know if anyone had looked any further into the arduino boards as
referenced in note 370.
Lastly (at least for now) does anyone have a ballpark figure as to roughly how
much the board, switches and such as that end up costing? (not worried so much
about the cost of the frame, as i have a few ideas already concerning this.)
This is a very unusual approach. God bless you sir.
========================================================
--- In chordite@yahoogroups.com, "Steelwolf" <kaos.one@...> wrote:
>...
> Rather than jump in with both feet asking uneducated questions that i would
not understand answers to anyways, i am slowly going through old posts to try
and get a background.
>
> Hopefully by the time i get to asking questions i will be able to find my
posterior with both hands.
>
Well, don't feel like you need to learn to program (write code) before
you try to build a chordite or install the firware on (program) the
atmel microcontroller. Soldering a circuit and programming a chip is
a log more straightforward than writing code.
Best Regards.
Please keep in touch.
This is unedited.
P-)
On Fri, May 1, 2009 at 10:26 AM, Steelwolf <kaos.one@...> wrote:
>
>
> I get the distinction between the two types of programming, but have no
> experience with any of it in practice. Currently going through all the old
> documentation and trying to see how everything ties together.
>
> Rather than jump in with both feet asking uneducated questions that i would
> not understand answers to anyways, i am slowly going through old posts to
> try and get a background.
>
> Hopefully by the time i get to asking questions i will be able to find my
> posterior with both hands.
>
>
I get the distinction between the two types of programming, but have no
experience with any of it in practice. Currently going through all the old
documentation and trying to see how everything ties together.
Rather than jump in with both feet asking uneducated questions that i would not
understand answers to anyways, i am slowly going through old posts to try and
get a background.
Hopefully by the time i get to asking questions i will be able to find my
posterior with both hands.
Well, typically it's clear from the context. A person programming is
a person writing source code, while a device programming is a device
applying the proper voltages in the proper sequence to copy the bytes
in the proper sequence to the proper addresses in the nonvolatile
storage of the target device.
Best Regards.
Please keep in touch.
This is unedited.
P-)
On Tue, Apr 28, 2009 at 7:56 AM, John McKown <john_3000@...> wrote:
>
>
> I should say first we are a programmer who programs a program, then we use a
> programmer to program a programmable chip on a development (or demo) board.
> That's how we get with the program. :-)
> =====================
>
> --- In chordite@yahoogroups.com, "John McKown" <john_3000@...> wrote:
>
>>... So first we program and then we program. ...
>
>