Introduction: Learning Morse!!
Hi!! I made this instructable for those persons who want to learn Morse code. I thought that only write and store code in our minds was boring, and I decided to make this learning more interactive and fun using an arduino board. Have Fun :D!!!
Step 1: What Is Morse Code?
Morse code has been in use for more than 160 years—longer than any other electrical coding system, and provided an essential means of communication. Some people have even called it the Victorian Internet because it enabled world-wide communications in a way never before possible. Morse code is a method of transmitting text information as a series of on-off tones, lights, or clicks that can be directly understood by a skilled listener or observer without special equipment.
Each letter and numeral is represented by a unique sequence of dots and dashes. The duration of a dash is three times the duration of a dot. Each dot or dash is followed by a short silence, equal to the dot duration. The letters of a word are separated by a space equal to three dots (one dash), and the words are separated by a space equal to seven dots.
What was the importance of the code Morse?
Before the invention of Morse Code and the telegraph, messages were still handwritten and carried by horseback. Morse Code changed the way we communicated. In the time of its invention, it was the fastest long distance form of communication.
Morse Code allowed for ships at sea to communicate over long distances using large lights. Morse Code was especially pivotal during the second World War because it greatly improved the speed of communication. Naval war ships were able to communicate with their bases and provide critical information to each other. War planes also used Morse Code to detail locations for enemey ships, bases, and troops and relay them back to headquarters.
Is Morse code still used today?
Morse Code is still widely recognized, even if it is not as widely used as it once was. Morse code is still popular among amateur radio enthusiasts, although proficiency in Morse Code is no longer a requirement to obtain your amateur radio license.
Morse Code is most prevalent in Aviation and Aeronautical fields since radio navigational aids such as VOR's and NDB's still identify in Morse Code. The US Navy and Coast Guard still use signal lamps to communicate via Morse Code. Morse Code has also been used as an alternative form of communication for people with disabilities or whom have their abilities to communicate imparied by stroke, heart attack, or paralysis. There have been several cases where individuals have been able to use their eyelids to communicate in Morse Code by using a series of long and quick blinks to represent that dots and dashes.
The SOS is the most easy example that we can find, everybody (or most people), know the famous "Save Our Souls" message. It has served a lot of people.
Step 2: Materials
- Arduino Board
- 1 breadboard
- Some jumpers wires
- LCD with I2C
- 1 resistance of 220Ω
- 1 resistance of 100Ω
- 1 buzzer
- 1 blue LED
Step 3: Making the Circuit
- Connect the VCC and GND of your arduino board to the respective lines of alimentation in your breadboard
- Put a resistance of 100 Ω in your breadboard,then attach a wire to the pin 8 of your arduino board and connect it to the resistance.
- Put the positive pin of the buuzer in the negative node of your resistor (by kirchhoff law, the negative node is where there is a negative voltaje drop), and then connect the negative pin of the buzzer to GND.
- Connect in parallel ,respect to buzzer, the blue LED and add to this a pull up resistance of 220 Ω, then attach the negative pin of the led to GND.
- Finally, connect the LCD to the respect pins of you arduino board, I mean: VCC to VCC, GND to GND, SDA to SDA, and SCL to SCL.
- Good work, we have finished the circuit!! Now, we need to write the code =D
Step 4: Writing the Code
You can download the code here:
Step 5: Does It Work??
Now, we have to compile and chargue the program in our arduino. The operation is simple, we have to send a message through the Serial Monitor, and then the LED and the buzzer must flash and sound in the respective morse code respect the message sent. Like the video in the top.
If you could make it, CONGRATULATIONS!!! Now you can learn the Morse Code by an interactive way =D
23 Comments
5 years ago
Hey I need your help. I got your code this error keeps popping up.
Reply 5 years ago
Hi EdagrM97!
The problem is the LCD I2C library that you have installed.
There are differents types of I2C chips embedded in some LCDs. I suggest check the part number of the I2C chip that is behing your LCD and google it like: "(your i2c chip) LCDI2C arduino library.
Othe thing you can do is change the LCD library for the library that works in your LCD. Test a single skecth with only your LCD to see if that library works and then use that library in the Morse sketch.
HappyHacking
Question 5 years ago
The program doesnt work.. i posted it in the comments
Answer 5 years ago
Hi EdagrM97!
The problem is the LCD I2C library that you have installed.
There are differents types of I2C chips embedded in some LCDs. I suggest check the part number of the I2C chip that is behing your LCD and google it like: "(your i2c chip) LCDI2C arduino library.
Othe thing you can do is change the LCD library for the library that works in your LCD. Test a single skecth with only your LCD to see if that library works and then use that library in the Morse sketch.
HappyHacking
7 years ago
Is it can connect the morse key to arduino input pin???
Reply 7 years ago
Hmm Do you mean connect the output of the Arduino (Morse signals), to an arduino pin? In that case, sure, that is possible!, only attach the output of the morse key to an arduino input. But If you are using only one arduino board, you can change the code to have more than one outputs with the morse key, even you can manipulate the code to have the morse key in one output pin, and in other pin have the morse key plus your operations/changes/algorithms and generate a new pulse
Reply 7 years ago
Thank you for your information.
I would like to connect the button look like the morse key to arduino pin.
In your program, it is used the serial print to read the signal. But I have no idea how to do in your program to connected the button key(morse key).
Could you give me a trips.
Thank you.
Reply 7 years ago
Hi, Sure!, I'm using the Serial monitor to "translate" almost any word to morse automatically. If you want to make a traditional morse code machine (input each letter using a button to create dots and dashes), you can use one push button and a buzzer without using an arduino or even code! Something like the image in the link below, only change the LED by a Buzzer :)
http://www.codeproject.com/KB/boards-embedded-devices/845211/4.5_ab.jpg
Reply 7 years ago
Thank you very much for your help.
I will try it.
Reply 7 years ago
;) Any other doubt, you can ask me
Regards!
8 years ago on Introduction
There is an error in coding..hw to solve it?
Reply 7 years ago
Hi, Sure!, I'm using the Serial monitor to "translate" almost any word to morse automatically. If you want to make a traditional morse code machine (input each letter using a button to create dots and dashes), you can use one push button and a buzzer without using an arduino or even code! Something like the image in the link below, only change the LED by a Buzzer :)
http://www.codeproject.com/KB/boards-embedded-devices/845211/4.5_ab.jpg
Reply 8 years ago on Introduction
Hi! I have compiled the code again and the arduino IDE does not mark an error. Check if you copied the same code, or check if the correct arduino board is selected. Some other cause, could be the arduino IDE version.
Reply 8 years ago on Introduction
oke bro..tq.:)
Reply 8 years ago on Introduction
Sure, I download the library from here: https://github.com/jenschr/Arduino-libraries/tree/...
Download all the archives and save them in a file "LiquidCrystal_I2C", and put this file into "libraries" in your arduino files.
Reply 8 years ago on Introduction
So how to install I2CLCD in library? cn u gv the link to download yr arduino version?thankz
Reply 8 years ago on Introduction
Arduino: 1.6.3 (Windows 8), Board: "Arduino Uno"
sketch_may02b.ino:2:17: fatal error: LCD.h: No such file or directory
compilation terminated.
Error compiling.
This report would have more information with
"Show verbose output during compilation"
enabled in File > Preferences.
This is an error.
Reply 8 years ago on Introduction
I already know what is happening, you dont have installed the I2CLCD library, in the instructable i used a LCD with I2C comunication, if you are using a lcd with I2C, as I, you have to install the library.
Reply 8 years ago on Introduction
ok thankz bro..i try it now..cn u send again that code.thanks.:)
9 years ago
A really nice work dude!