The Morse Translator With Arduino
Intro: 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.
Components
- 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!
21 Comments
namyeüs 1 year ago
JustJason00 4 years ago
Arduino: 1.5.6-r2 (Windows 8), Board: "Arduino Uno"
Morse_Code_Decoder:13: error: 'POSITIVE' was not declared in this scope
Does somebody know how to fix this?
lingib 3 years ago
Some LCD libraries contain the word POSITIVE.
If you have a different LCD display you will need to find a matching library without the word "POSITIVE".
MayankP37 4 years ago
EdgarM97 6 years ago
alokaisipathana 5 years ago
joffgod 5 years ago
im fairly new to arduino and was wonering how i could adapt it to make one push button for dots and the other for dash?
RafaG16 5 years ago
It doesn't work. The buzzer works so well but the lcd only shows squares, any letter. Can you help me? I used arduino IDE and all connections are fine. My lcd works in other projects using the same library.
AmirM98 5 years ago
change the contrast with the pot
ra.giraldo1260 7 years ago
Hello, I can't seem to make the LCD display the characters. Could you help me??
blubflubify 6 years ago
Found a solution.
blubflubify 6 years ago
I am having the same issue, It will make the noise but the screen stays blank.
Fred_RK 7 years ago
Thaaaank you so much for all the votes :)
<3
TommasoP8 7 years ago
Hi, i'm getting nothing but E, any ideas?
Fred_RK 7 years ago
Have look at the morse code table.
Hope it works for you.
Have fun!
amal_asaad35 7 years ago
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 :)
Fred_RK 7 years ago
Hellooo,
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 :)
rexty37 7 years ago
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
Fred_RK 7 years ago
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
Fred
Anirudh Ralhan 7 years ago