Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

KochMorse -- A morse-code tutor

KochMorse is a simple morse-code tutor using the Koch method. It is written in C++ and uses Qt5 for the graphical user interface (GUI). More ...

Koch Morse in action.

KochMorse runs under Linux, MacOS X and even under Windows. See the Install wiki page for details.


Below, you will find a list of features of the current KochMorse release.

  • A morse tutor using the Koch method.
  • A random morse tutor -- Allows to select a set of characters and prosigns for practicing.
  • A QSO tutor -- Generates a random QSO text so you can practice reading typical QSOs.
  • A customized text tutor -- This tutor allows you to listen to a plain-text file or to a text generated from user-defined rules.
  • A transmit tutor -- Connect your practice tone-generator to your microphone input and check your transmissions with KochMorse.
  • A chat tutor -- This tutor is a combination of the transmit tutor and the QSO tutor. Call CQ and KochMorse will answer.
  • Different speed of characters and pauses. This allows to practice the reading in full speed, while having enough time to write the character down.
  • Different tones for dashes and dots.
  • Keying style -- Simulates straight key or bug-style dash/dot-length jitter.
  • Noise audio effect -- Increases the difficulty to read the morse code for practicing.
  • Fading audio effect -- Periodically fades the morse signal for practicing. In conjecture with the noise effect, it simulates the conditions on HF bands pretty well.
  • QRM effect -- Increases the difficulty to read the morse code by simulating parallel QSOs nearby.


kochmorse Packaging status


This is a C++/Qt reimplementation of my "old" python morse-code tutor (also called "kochmorse", As the "old" implementation relied on ALSA for sound output, it was restricted to Linux. This reimplementation now uses the Qt5 Multimedia module for the sound output and the GUI is implemented using Qt5, it is therefore more platform independent and runs under Linux, MacOS X and Windows.