USB Arduino Morse Code Key




Ever wanted to type on a computer with a morse code key or to learn/teach morse code? You are on the right page!

For my other projects, check out

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Gather Materials

• 1 × Arduino/Genuino Micro

• 1 × 3v buzzer

• 1 × morse code key (I got this one:

• 1 × 680Ω resistor

• 1 × 120Ω resistor

• 1 × circuit board

• 4 × M4×0.50 round head machine screws

• 2 × 6-32×1/2" round head machine screws

• 2 × 6-32 machine nuts

• Some mounting tape

• Some jumper wires

• You might also want to learn morse code if you don't already know

Step 2: Code

Upload the code to the Arduino/Genuino Micro

The Keyboard library allows the Arduino/Genuino Micro to act as a keyboard

In my code seven and eight dot("......." & "........") are backspace and a really long dash("-") is space

Step 3: Solder

Solder all the parts onto a perfboard.

I started the project knowing very little about Arduino. I used an analog pin to detect if the morse code key is clicked. You can use any analog or digital pin for this, just be sure to change the "morseKeyInputPin" in the code. If you know what you are doing, you can use the internal pullup(INPUT_PULLUP) resistor to detect the state of the morse code key.

Step 4: 3D Print the Base

You can order one from an online 3D printing service or print one yourself. The 3D model is designed with, it's basically MS paint for 3D modeling.

Online 3D printing services:

more on Google

Step 5: Assemble

1. Wire the two wires sticking out of the circuit board under the morse code key

2. Secure the morse code key onto the base with two 6-32×1/2" round head machine screws and 6-32 machine nuts

3. Tape the circuit board on to the bottom cover with mounting tape

4. Secure the bottom cover with the four M4×0.50 round head machine screws

5. Adjust the bottom screws/bolts to level the morse code key

Step 6: Start Typing

Here's a US navy training video on sending morse code

Plug it into your computer and start typing

Don't forget, in my code seven and eight dot("......." & "........") are backspace and a really long dash("-") is space

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    5 Discussions


    3 years ago

    Why did you use internel pulldown. Why could you not just use a 10k resistor.

    2 replies

    Reply 3 years ago

    I made a mistake. There is no built in pulldown resistor. there is only a 20k resistor that can be used to pull it high but I would expect that you would not want to pull high, you want to pull low.

    Ya it is, I got three people interested in morse code the first day when I brought it to school.