Sunday, February 27, 2011


What fits in a mint tin and lets the 19th Century communicate with the 21st?

It's not a real riddle, it's the Morse key USB keyboard! A nifty little interface that connects to a telegraph key on one end and on the other, tells your computer it's a USB keyboard.

While first at glance you might see only hobbyist fun (and big fun indeed for some of us), there's a serious side to this kind of interface, too: persons with limited mobility or strength who are unable to use a conventional keyboard can use a telegraph key. It has been done before, usually in the form of software running on a dedicated machine with a specialized interface; this is plug'n'play, portable. USB connection, Dr. Hawking?

Downside, you'll need the hardware/software to flash an Arduino-compatible microcontroller. Or know someone who can.

Update: If you'd like to match this to a landline telegraph sounder, Jake von Slatt's sounders are a scratch-built solution; the morse2led software he uses to drive them (from a keyboard led) would also work a commercial sounder, piezo buzzer or electromagnetic buzzer, though you might have to fiddle with the drive ciruits a little.

If you were wondering, yes, there is Morse telegraphy on the Internet. The software is free. The linked page, at the wonderful Morse Telegraph Club website, will guide you to sites and software, some using landline (or American) Morse and others using radio (or International) telegraph codes


  1. I was at the Southern California Linux Expo yesterday, and I was amazed at how many projects using the Arduino board there were. At first I thought they were Basic Stamp or PIC boards, but then I remembered where I was.

  2. It's pretty much *the* thing for most hobbyists -- and here I already learned how to program a BASIC Stamp. Guess I'd better reboot!

  3. OMG i have been looking for exactly this item! thanks for sharing it!
    73 de AD7EU

  4. I did some stuff with a Basic Stamp a while back, after somebody gave me a whole development kit. Nothing special, just a little timer board that sensed when my car was running, and turned on the power for my Kenwood D710 and GPS interface, and shut it off 10 minutes after I shut the car down.

  5. How interesting! I saw a telegraph key in an antique shop recently and wanted to get it. Not that I know a dot of morse code.

  6. Oh, just one dot would do? That's an "e." :) Most common letter gets the fastest symbol.

    There is not such a shortage of telegraph keys that none can be spared to be purely decorative. For old keys, the ordinary up-and-down kind (as opposed to the more complicated side-to-side "bugs" that make the dits [dots] for you) can be found at quite reasonable prices.

  7. RobertaX: Where am I?? This place is great!

    I offer to you all of my knowledge, experience, and random electrical parts if you want to explore more about microcontrollers.

  8. Um, okay!

    Glad you like the place. I am intent to keep Retrotechnologist at the intersection between tech geekery and the preservation and use of old technology. Response from the typewriter crowd (a delightful group of wide-ranging intellects and personalities) has been especially heartening.

    I would like to build the Morse USB keyboard and the lack of microcontroller tools is the stumbling block.

  9. If you are willing to accept my help, I'm willing to assist.

    "the lack of microcontroller tools is the stumbling block"

    You really are not asking for much. Sincerely. I own hundreds of raw microcontrollers.

    All you have to do is tell me how much help you would like and what skills you have, what you want to do, where you might have questions.

    If I contact you via email from your other blog, will it get to you OK?

  10. It will, though I may be a day getting to it.

    What puzzles me at present is the builder's comment: "I have flashed the code directly to an ATMEGA168, bypassing the Arduino stack."

    I'm used to the BASIC Stamp, in which the little gadget gets programmed (from one's computer) in the development board and then installed in the end-user setup -- I used a standard general-purpose board for that. (Guess I could have done it all one one but I wanted to end up with a way to program changes without having to take the device out of service, as it was a contact-closure to serial character string interface that made an HDTV router follow source selection made on a very old analog TV switcher and available downtime was limited).

    But it sounds like he bypassed the board for the first step and that's got me puzzled. Or am I overthinking it and the wired-up device provides enough support to flash-program the microcontroller in place?

  11. The term "Arduino" defines a lot of things. It is the board shape, the connector pin-outs, the microcontroller, the development tool, and the ability to load code via bootloader.

    In this case the author strips a lot of that away and just uses the plain, empty microcontroller ('168) in the design. It happens to be the same one as is used in the Arduino, yes, but that is where the connection ends.

    Your BASIC stamp is a PIC microcontroller that has has some code pre-loaded into it. The PBASIC code that you write works in conjunction to this code. The two working together gets you the code in the Stamp that does what you want.

    Not exactly the same, but similar stuff happens with the Arduino. It is a Mega168 processor that has bootloader code that you add code to and have a combined result.

    In this case, though, the "bypassing the Arduino stack" means that the ONLY code running in the micro is the Morse code uh... code. The Arduino-ness of the setup no longer applies.

    That then is the need for development tools. I can help you get a handle on all of the tools that you need to do this. Or I can program a micro for you.

    If your goal is to assemble and use this device, then you just need a programmed micro. Not everyone that moves into a house is taught how to build their own home. Unless you want to do DEVELOPMENT and want all of the tools, then the best thing would be to just get a programmed micro.

    I'll make a claim that this would be hours worth of effort on my part, tons of sweat, and great expense to get you the part. Truth is, it would be a couple of minutes to move a programmer to my desk, Herculean double clicking, and grabbing a '168 or equivalent from a stack of them.

    Net result is a microcontroller burned with this code for you. I sent an email to you. You can later learn all the development stuff if you wish, but I think your goal right now is making the device with the code as is.

    I sent an email to you yesterday. We can take details off line, if you wish.