The idea for this project was born out of an intrigue for morse code communication as children and keyboard-less means for communication. For instance, with our project, one could type a message using morse code without the use of a keyboard, perfect for messaging in discrete or inappropriate settings (lecture halls, funerals, undercover cop work). In addition, the other part of our project enables a user to input text to be translated to morse code in the form of beeps and a light flashing. This would enable communication for the deaf and hard of hearing and for the small subgroup of the population who prefer audio morse code cues rather than visual readings (perhaps you want to listen to Pride and Prejudice in audio morse code form on a run, for some odd reason).

What we did

For the first demo day we demonstrated a capacity to input text into serial monitor and translated to beeps and light flashes on arduino board. We also demonstrated morse code input via a button into text on arduino serial monitor (ahead of schedule for first demo day). For the final demo we also added extra features such as a light for the text to morse component that changed color with each new character. This allowed the viewer to more clearly be able to know when a new letter was being relayed. We also added an accelerometer for the morse to text component. This was because normally morse code does not have an option for spaces, as back in the day communicators would essentially colloquially understand a timed pause to be a one. However, as this is being relayed as a message on a screen, we needed an option for spaces. Thus when the device is shook, the accelerometer detects the movement and a space is recorded.

How it works

The morse to text component works by there being three buttons for inputs. The first button is a start/end button, where it needs to be clicked to begin recording inputs and is clicked again to send the final message. The second button is for morse code input which records short and long clicks (Arduino records based on time). The last button is to signify a completed character and letting Arduino know to move on to the next (for instance, ‘E’ is just a short click, which is the start of a lot of other letters, so this feature is necessary). All the processing was done in Arduino, with a 2D array of 1’s and 0’s to signify each letter in the alphabet (26 by 5 array, 1’s are long clicks, 0’s are short clicks). A similar array was used for the text to morse component to represent the alphabet. A beep would sound and a light would flash with each part of the morse code letter. A long sound would be for 1’s and short sound for 0’s (from the morse code alphabet). In addition, the light would change color after each letter by altering the color input after each character was done being relayed. In general for both parts, the code generally worked by checking if a button was clicked or not (done similarly to the past assignments) and continuing the logic to determine if it is a long or short click (again, based on time of click). We would then match the 0’s and 1’s input to an index of the array to then match it to the appropriate letter, appending the letters to a growing string that would be the final message.

Next steps

This project could be turned into a real product if we connected the basic idea to a smart phone and/or laptop computer. We envision this such that you could click buttons on a device and the message could be inputed on your computer/smartphone or be sent directly via instant messaging or perhaps on social media. The second component could be such that someone could send you a message on a social media site or on your phone and the device would then beep the morse code. This product would most likely be more attuned to be a novelty project for children or perhaps the morse to text component could be used for the visually impaired such that they don’t need to use keyboards and could instead communicate with morse code.

Potential improvements

Improvements for this project could be improving the physical form of the product. Right now it is in a very raw stage, with lots of messy wires, breadboard, and dependency on connection to a computer and arduino. We could also work to have it such that a message could be texted or sent via IM and we could then have a morse code output directly, or with the morse code input have it be texted to someone or posted on Facebook or tweeted directly (perhaps even directly into a word doc for word processing). The possibilities are limitless.

Built With

Share this project: