Morse Code Translator

Jun 8, 2023·
Cayden Miguel Theseira
Cayden Miguel Theseira
· 2 min read
Image credit: Me
Table of Contents
GitHub Logo GitHub Repository for Morse Code Translator

Project Scope

This project is an interactive Morse Code Translator that:

  1. Lets users input Morse Code using push buttons.
  2. Outputs the corresponding text and plays light and sound signals.
  3. Utilises servo motors to visually represent letters.

The project combines historical inspiration with modern engineering to create a functional and engaging device.


My Role

As the sole developer of this project, I was responsible for conceptualising, designing, and building the Morse Code Translator. I handled all aspects of the project, including hardware assembly, code development, and debugging. Additionally, I created detailed sketches and a flowchart to visualise the system’s logic and design.


Work Process

Components Used

The Morse Code Translator was built using the following components:

  • 5 resistors
  • 4 push buttons
  • 7 servo motors
  • 1 LED
  • 1 buzzer
  • 1 breadboard
  • 1 Arduino
  • Various connecting wires

Design and Implementation

Sketch of the Morse Code Translator

Sketch
Sketch of Morse Code Translator

Flowchart of the Morse Code Translator

Flowchart Diagram
Flowchart of Morse Code Translator

Early Development Picture

Early pic
Early Development Picture

Outcome Achieved

After extensive testing and iterations, the Morse Code Translator successfully:

  • Converts user input into Morse Code or text.
  • Uses servo motors to visually represent letters.
  • Provides accurate light and sound feedback.

Operation

  • Short click: Represents a dot (.).
  • Long press: Represents a dash (-).
  • Space button: Differentiates between letters and words.
  • Delete button: Corrects the last input.
  • Translate button: Finalises and translates Morse Code.

Video Presentation

Challenges Faced

  1. Troubleshooting the circuit:
    • Initial wiring issues caused incorrect signals.
  2. Debugging code:
    • Logic errors in Python led to unexpected results.
  3. Framework unfamiliarity:
    • Learning the AAD framework was challenging but rewarding.
  4. Servo motor calibration:
    • Fine-tuning was crucial for accurate letter representation.