Morse code Python project

My son recently had to do a project for school where he learned a life skill and then did a presentation for it. He wanted to do coding. They had previously learned about Morse code so I thought it would be fun to make a Morse code converter.

There were 2 stretch goals for me involved: I had to use Python (which I am only moderately familiar with) and I had to use Linux. We did it on my laptop, which runs Ubuntu, and used PyCharm. It was real fun!

Here is the project if you want to check it out:


Awesome, you guys! And your GitHub notes are spectacular!

1 Like

Thanks man, appreciate it!

contact your local Ham Radio Clubs! They have experts w Morse Code and can add the Keys to his presentation…fascinating hobby!

1 Like

You know what would also be great?

Provide Python-newbies

  • instructions on how to download the GUI,
  • how/where to install it, and
  • how to invoke/use it!

Adding keys from local Ham Radio Clubs expands it to even more users. Like to the Ham Radio Club people themselves!

1 Like

That is a good idea. I updated the readme on GitHub to add setup instructions. Can you let me know if they are clear enough?

I have heard from a few folks about adding keys for the local ham club, I have to admit I don’t know the first thing about that but I am getting more interested. I’m thinking about attending a meeting from the local club and bringing my son. Is that something that will become more clear when I meet them?

Ok. Here’s what happened:



Looks like #4 could use clarification: the #2iii, “git clone” step creates a new folder, so the user might benefit from a heads-up to look for/cd into it.

Once I got into the proper (new) folder, step 4 generated an error message. (image attached here)

What can I do differently in order to get step 4 (run) to work?

Sweeeeeeeeet, @mikjay !

1 Like

Yeah, I don’t know about the ham clubs either. BUT, since they’re into Morse Code, I’m sure they’d get a kick out of supporting you and your son’s project.

Be sure to take your program with you on a laptop…for show-n-tell!

@nwarren Thanks so much for taking the time to spell that all out for me! I updated the readme again to clarify the things you pointed out. It looks like tkinter is not installed, which is why the program failed. Supposedly it comes with the latest release of Python, which is kind of confusing. Try sudo apt-get install python3-tk in your case. I really appreciate it!

You’re welcome, @mikjay . I guess creating good stuff together is one, primary reason we’re all here.

On to the news:
Your modifications to the Setup protocol are helpful. And you were right about tkinter not being installed.

So first, I stumbled into another “gotcha” that you can include in your next update. Notice which folder I began working in!




After I was returned to the $-prompt, I thought, “Wait a minute! Where was I when I invoked the program?” Yep. Wrong folder. I returned to Terminal, cd’d to the proper folder, and…

Then my next discovery:

Add’l recommendations for your Setup protocol:

  1. Between current steps 4 and 5, insert a heads-up for user to make sure they are in the “Morsifier” folder from within Terminal.

  2. Either

  • insert a warning (new #6) that if User exits Morsifier before the code has finished running/flashing, they’ll get an error which can be ignored, OR
  • write add’l code to mitigate any premature-exit error message.
    FYI, I just re-ran Morsifier and, this time, allowed the code to complete flashing. No error message occurred. Errors only show with an early exit.

I do hope you and your son visit your local Ham Radio club. It would be interesting to find out what enhancements they might come up with!

Best regards,

1 Like