Bill Ward (KD4ISF), Guy Dickenson (KD7TJJ) and Dave Clausen (W2VV) setup a club call sign N2YCR and a remotely operated computer station running fldigi for PSK31. The machine is in the backroom at NYCR and can be operated by members with general class amateur radio licenses from anywhere, using xvnc to display the fldigi application.
But operating it with a keyboard has none of the feel of an old fashioned QSO, so I designed an interface for Dave’s BY-1 Bencher Iambic Paddle. Iambic paddles are very different from straight keys in that they have two inputs: one for “dit” and one for “dah”. If an input is held in, it will repeat at a pre-programmed speed. If both are held in, they will alternate between the two symbols. Typically the dah is three time as long as the dit.
The paddle itself doesn’t generate the code; this is the responsibility of the radio, or in this case, of the Teensy 2.0. It runs a state machine that listens for PIND4 to be pulled low to indicate a dah, or PIND5 to be pulled low for a dit. If neither is pulled low within the time of two dits, the current bit-stream is looked up in a table and if there is a valid USB keyboard event in the table it will be sent to the host computer.
Check out his blog post for all the details, including design considerations and source code.