The Morse Translator With Arduino





Introduction: The Morse Translator With Arduino

What it does:

It translates your morse code into English words!

With this Morse Translator you can improve your morsing skills. Imagen,if the zombie apocalypse will happen, this will be the only way to communicate. Start practicing now!!

... or just have fun morsing ;)

About the morse code:

Characters in morse code consist of a series of dots (short beeps) and dashes (long beeps).
The duration of a dot is the basic unit of time.

To begin with, the variable is set to a value of 1000 ms, which is good if you're just starting to learn morse code. The following rules hold: The duration of a dash is three times the duration of a dot (default 1000ms) The gap between dashes and dots within a character is the duration of a dot.The gap between characters is three times the duration of a dot (i.e., the duration of a dash)The gap between words is seven times the duration of a dot.


  • 1x Arduino Uno
  • 1x Breadboard
  • 1x Potentiometer 10k Ω
  • 1x Button
  • 1x Speaker (Piezo Buzzer)
  • 1x LCD (Hitachi HD44780 compatible)
  • 1x Resistor 220 Ω
  • M-M / M-F Jumper cables

Step 1: Connecting Parts

Connect the parts according to the fritzing sketch.

Step 2: Code and Usage

Upload the source code to your Arduino.

You can change the duration of a dot in the source code by changing the value of the variable dotDuration.

In order to make it easier for beginners, the morse code translator tolerates certain deviations of the actual duration of dots, dashes and gaps.

The tolerance can be modifies by changing the value of the variable tolerance in the source code (the default is 500 ms).

- Happy morsing!

Make Noise Challenge

Runner Up in the
Make Noise Challenge



  • Woodworking Contest

    Woodworking Contest
  • Planter Challenge

    Planter Challenge
  • Make it Move Contest

    Make it Move Contest

We have a be nice policy.
Please be positive and constructive.




Help.. The code wont open

Hello, I can't seem to make the LCD display the characters. Could you help me??

2 replies

I am having the same issue, It will make the noise but the screen stays blank.

Thaaaank you so much for all the votes :)


Maybe, try to press the button faster.

Have look at the morse code table.

Hope it works for you.
Have fun!

there is an error in code

what is that mean

Morse:13: error: expected unqualified-id before '\x6574'

Morse.ino: In function 'char readCharacter()':

Morse:127: error: 'alphabet' was not declared in this scope

Morse:132: error: 'alphabet' was not declared in this scope

help please :)

1 reply


Uff that's a good question.

Which platform did you use?
Have you perform any changes in the code?
Have you used the Arduino IDE?

Have you opened the file in Notepad and changed the encoding?

I just tested the code without any issues.
I use: Arduino IDE + Arduino Uno

Maybe download the file again, and open it directly in the Arduino IDE.

Let me know if that worked out :)

Hello and thank you for the assembly.

Question: I have an I2C LCD display
Four pins, how to plug
And what changes in the code?

Happy New Year 2017

1 reply

Hi rexty37,

thanks :)

How to plug the display depends on which display do you have :)

What you have to do anyway:

Include the library of your LCD display to the code and replace "LiquidCrystal lcd(12, 11, 5, 4, 3, 2);" in the code

Hope it worked :)

Best regards and happy new Year 2k17


Cool. Definitely making this as i'm really interested in Morse code. Well explained and easy instructable. Voted :)

That's really fun! :)