• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

KB6NU's Ham Radio Blog

KB6NU's Ham Radio Blog
  • HOME
  • Study Guides
  • Teach a One-Day Tech Class
  • W8SRC Repeater Guide
  • Advertise
  • Hire Me

A CW Geek’s Keyer

May 31, 2015 By Dan KB6NU 16 Comments

cw-geek-button-250x250At Dayton, I had so much fun giving out my CW Geek buttons that I started to think about how to extend the CW Geek “franchise.” One of the first thoughts that came to mind was designing and building a CW Geek keyer.

As I attended a couple of talks about using the Arduino open-source microcontroller platform in amateur radio projects, I decided to Google around to see what might already be available. Way back in 2009, the September/October issue of QEX featured an article by KC4IFB on building an iambic keyer with an Arduino. More recently, Goody, K3NG has been developing a more complete Arduino keyer software package.

Then, I stumbled upon the NanoKeyer kit by Oscar, DJ0MY. For $35, Oscar will send you a kit of parts that allows you to build a board, into which an Arduino Nano plugs. You then download a version of the K3NG software, and you have yourself an Arduino-based keyer.

I purchased the kit, it arrived within a week, and I built the kit that evening. Aside from a few little gotchas, I managed to get it all together in a couple of hours.

One of the difficulties I had was that I managed to mangle one of the headers that the Arduino Nano plugs into. Oscar sends you 20-pin headers, but the Arduino Nano has only two rows of 15 pins, so you have to cut down the 20-pin headers into two 15-pin headers. In doing so, despite an explicit warning in the assembly manual, I managed to cut of an extra pin. Fortunately, with some careful soldering, I was able to install the header properly.

After downloading Oscar’s software package, I successfully compiled and uploaded the Arduino program, and I was on the air. I’ve been using the keyer for a couple of days now and like it a lot. I do have some comments, though:

  • The LEDs are really bright. There are three LEDs: a green LED for power, a red LED that shows the PTT output, and a blue LED that shows the keying output. They’re so bright that they can be a bit distracting.
  • WinKeyer emulation works very well. I played around with it using the N1MM software, and it seemed to work without a hitch.
  • Unfortunately, the USB keyboard feature doesn’t seem to be working. When I tried to compile the software with that feature, I got a bunch of compile errors. I e-mailed DJ0MY about this, and he said that he didn’t think that Arduino Nano would support this mode.
  • The NanoKeyer has a 1/4-in. phone plug on the back for connecting paddles, and I just converted all of my paddles to 1/8-in. phone plugs because that’s what the WinKeyers use. ARRRRGHH. :)

All things considered, for less than $50, I have a keyer that I can not only use just like my other keyers, but one that I can experiment with as well. For example, I can see experimenting with an LCD display to give me a readout of speed the keyer is set to, and there’s some experimental code to decode CW as well.

I’m sure that I’ll think up some other features as well. Are there any features you would like to see in a keyer that the current crop of keyers doesn’t have?

Related posts:

  1. Heathkit Keyer on the Air
  2. From my Twitter feed – 11/27/12
  3. Heathkit Keyer
  4. CW Freaks and Geeks

Filed Under: CW Tagged With: Arduino, K3NG, NanoKeyer

Reader Interactions

Comments

  1. Doug says

    May 31, 2015 at 12:35 pm

    Nice post.

    The thing that keeps me from committing to learning CW is the price of the key, not the keyer. There are no end of good, affordable keyers. There are also lots of affordable CW learning aids available, including the author’s book.

    I can find budget straight keys at $15 that would likely be fatiguing for extended periods of operation. From there, the price range appears to jump to the $150 to $250 range.

    FWIW, that’s more than I care to (or can afford to) invest in learning CW, particularly since I really don’t know whether I would enjoy operating CW.

    What the world (or at least this budget-constrained ham) needs is a decent-quality $50 key. Given the parts count and mechanical complexity, that seems reasonable. I guess market forces dictate otherwise.

    Reply
    • Dan KB6NU says

      June 1, 2015 at 8:37 am

      Hi, Doug…

      You can often find Bencher BY-1 paddles at hamfests for $60 or so. That’s a good starter key. Another option is the American Morse KK2. It’s only $75 in kit form.

      Keep in mind that, even if it turns out that you don’t like CW at all, you can re-sell that key for what you paid for it. So, you’re not really out anything.

      Reply
      • econjack says

        November 29, 2016 at 5:28 pm

        The book Arduino Projects for Amateur Radio has a CW keyer that has no key. The one used in the book uses two solder lugs in place of a key. It works based on body capacitance, so almost any metal object can be used for the key. Touch the “dit contact” and it sends a dit. Touch the “dah contact”, it sends a dah. Great for working portable because you don’t have to drag a key along with you.

        Reply
  2. Goody K3NG says

    May 31, 2015 at 8:17 pm

    Hi Dan,

    The USB keyboard features (both using a USB keyboard to send CW and using the Arduino Keyer to emulate a USB keyboard) do not work on the Nano. You need a board like the Arduino Mega ADK or a USB shield to send CW with a USB keyboard. To use the USB Keyboard emulation, you need an Arduino Due. The USB Keyboard emulation lets you type out stuff like emails on your computer using a paddle which is challenging but fun :-)

    I like 1/8″ jacks for paddles, too.

    There is community support available for the keyer on the Radio Artisan group: https://groups.yahoo.com/neo/groups/radioartisan/info . I am always looking for feedback for new features and improvements.

    73
    Goody
    K3NG

    Reply
    • Dan KB6NU says

      June 1, 2015 at 9:36 am

      Thanks for the info. I joined that Yahoo group and did a quick search for information on the USB keyboard feature, but didn’t find anything.

      I’m a little disappointed that the Nano doesn’t support that feature, but I’m still pretty happy with the kit, and your fine code, and this does provide an opportunity for further tinkering.

      Reply
      • Goody K3NG says

        June 1, 2015 at 8:09 pm

        Keep in mind the Nano’s claim to fame is small size, not features or horsepower. It would be rather difficult to physically include a USB host port and the chips required to support it on a package the size of a Nano. A USB HID port can be emulated in software on an Arduino using the native USB port, however it requires a good deal of code, more than the Nano can handle. The Nano can basically support code for the memories, K1EL Winkey emulation OR PS2 Keyboard. With the Mega or Due boards you can compile and upload the whole nine yards and get all the features in one package with the appropriate circuitry.

        I’ve mention to DJ0MY, with whom I’m good friends, that an Arduino Mega CW keyer shield might be a good project considering how limited the Nano is. I think a lot of folks use the Nanokeyer mainly for K1EL Winkey emulation and interfacing with contest and logging programs.

        If you search for “USB Keyboard” on the project page (http://blog.radioartisan.com/arduino-cw-keyer/) you’ll find the USB keyboard feature instructions. I’m in the process of converting this documentation to a wiki on GitHub which will be much easier to navigate.

        Hope you enjoy sending code with my code :-)

        73
        Goody
        K3NG

        Reply
        • Dan KB6NU says

          June 3, 2015 at 11:02 am

          This is really my first project with an Arduino, so I’m not all that familiar with the capabilities of all the different models. I wonder at what point it becomes more economical to use a different platform, say the new Raspberry Pi or BeagleBone? It looks like Megas and Dues cost $45-50.

          I know that your code won’t run on a Raspberry Pi, but I was thinking that I might even try to sell the keyer, and I’m not sure how you feel about your code going into a for-profit product. (You might say on your website, but I haven’t had the chance to search for it.)

          I haven’t really thought any of this through. I’m just sort of “blue skying” this right now.

          Reply
          • Goody K3NG says

            June 4, 2015 at 8:59 pm

            I’m OK with for-profit offerings, all I ask is you send me a free kit or some goodie once in a while, support your customers, offer a quality product, and give me credit for the software.

            The Pi has some challenges as a CW keyer. There are not a lot of GPIO pins to work with and unless you’re using a realtime OS, timing can be non-deterministic. I actually looked into porting the Arduino CW keyer code to the Pi but it seemed like it was more of a pain than it was worth. I view the Pi and Arduino as different tools for different jobs. If you want a little computer with a multi-tasking operating system, the Pi is the way to go. If you want lots of raw I/O pins and low level hardware bit-banging, the Arduino is better.

            SainSmart offers a Mega clone for $20. I doubt they pay royalties to Arduino LLC, so I encourage folks to occasionally buy “real” Arduino LLC boards to support their development efforts if they do buy clone boards.

            73
            Goody
            K3NG

          • Dan KB6NU says

            June 5, 2015 at 9:54 am

            Good points, Goody. I suppose for relatively simple stuff, like a keyer, the Arduino is the way to go. Another thought that I had was to develop my own Arduino circuitry specifically for the keyer. I saw George Thomas, W5JDX, do this on a Ham Nation episode. I’m not sure that it’s worth the effort, though.

          • Goody K3NG says

            June 15, 2015 at 7:00 pm

            I’ve thought about making my own Arduino-compatible hardware, too. The pricing of the Chinese clones took the wind out of my sail with that idea. I came to the conclusion that it’s better to just fabricate shields and let users buy Arduino boards of their choosing.

        • Carl Winkler says

          October 30, 2016 at 5:32 pm

          Now that the Arduino Due has been retired with no successor board, do you have any suggestions for a board that would work?

          Reply
  3. Edward Vielmetti says

    June 5, 2015 at 8:43 pm

    The Beaglebone Black might be a better platform for a keyer than a Pi, just because it does have a controller on board that can be used for timing. You might also look at using WiringPi software ( at http://wiringpi.com/ ) as your driver for the Pi’s GPIOs.

    Reply
  4. charudatt - vu2upx says

    March 12, 2016 at 3:04 am

    the the RPi-0 at $5 it would be the most ideal platform for the keyer project. An LCD, and a USB keyboard is all that you need for all the facility of the K3NG keyer to be on board. Not to mention the CW decode function also.

    Just a thought……

    Reply
  5. Robbert says

    November 29, 2016 at 7:45 am

    Hi there,

    wonder if anyone has built a K3NG based keyer with TOUCH-display, anyone??

    73 de Robbert / PA3BKL

    Reply
  6. Dick says

    March 7, 2017 at 7:15 pm

    The cost of the key is just a lousy excuse…. plain and simple.

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

No Nonsense Technician Class License Study Guide (for tests given between July 2026 and June 2030)

New No Nonsense Technican Class Study Guide now available!

The 2026 version of my Tech Class study guide is now available, and as always, the PDF version is FREE!. The ePub version costs $11.97, and a Kindle version and paperback version will be available on Amazon shortly.

Click here to get all of my "No Nonsense" study guides.

Also available: The CW Geek's Guide to Having Fun with Morse Code

W5SWL.Com
Retevis Ailunce H1 DMR Radio
DXpander: Cobweb antennas, Laser Cutting

You’ve got mail!

Enter your email address below and get an email every time I publish a new post.

Email


I frequently teach classes to help newcomers get their licenses. The next class will take place on Saturday, October 10, 2026 on the University of Michigan campus. Click here for more information.

If you can't make the class, subscribe to the mailing list to be notified of when the next class will be held.

You can always download my free study guide, and if you have any questions about the classes, or amateur radio in general, please feel free to email me directly.

Support KB6NU.Com

Donate $7.30 and get two of these cool stickers. Measuring 4.25-in. W by 2.75-in. H, it's perfect for your car, your shack, or wherever!

Contact me

If you have a question or comment about one of my blog posts, or a question about any of the material in my study guides, or just a question about ham radio in general, you can email me at [email protected].

Blogs You Should Also Read

  • AE5X: A CW-centric blog from Kingswood, Texas
  • K0LWC Blog
  • LA3ZA Ham Radio Blog
  • Little Radios, Big Fun – WB3GCK
  • Mr. Vacuum Tube's Blog
  • Radio Artisan – K3NG
  • The K0NR Weblog
  • VE3WDM's QRP Ham Radio Blog
  • W2LJ’s Blog

Ham Radio Websites

  • Dashtoons – The Hammin' Comedy by Jeff K1NSS

Podcasts

  • ICQ Podcast
  • Linux in the Ham Schack
  • No Nonsense Amateur Radio Podcast
  • Resonant Frequency Amateur Radio Podcast

Recent Comments

  • Dan KB6NU on The EMF Explorer: A badge for ham radio?
  • Travis Good on The EMF Explorer: A badge for ham radio?
  • MARTIN ROBERT ROTHFIELD on The EMF Explorer: A badge for ham radio?
  • Mike Chen on Operating Notes, January 5, 2026
  • Rob W4ZNG on The EMF Explorer: A badge for ham radio?

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Footer

Copyright © 2026 Daniel M. Romanchik, KB6NU · Log in