Morsewurst

Morsewurst is a Windows desktop application for practising Morse code with real hardware keyers, live timing telemetry and detailed performance feedback. It combines USB-connected ESP32 hardware, adaptive decoding, practice history, skill progression and an experimental network relay for shared Morse practice rooms.

What it does

Morsewurst reads real-time Morse timing events from a connected microcontroller and turns that telemetry into detailed training data. Instead of only checking whether the final text was correct, it analyses how the Morse was sent.

The application tracks accuracy, cleanliness, timing quality, speed, problem characters and long-term learning progress. This makes it possible to estimate the operator's practical skill level more realistically and to reveal specific weak spots that need more focused practice.

Morsewurst is designed for hands-on Morse training. It also includes Koch receive practice, where users can train character recognition with guided progression, manual stages and scoring. Its purpose is to give useful feedback, support repeated practice and help the user improve both recognition and keying quality over time.

The Morsewurst project currently requires a custom-built Morsewurst hardware keyer. The keyer sends precise timing telemetry to the desktop application, which then decodes, scores and stores the practice session.

The included ESP32 firmware is designed for an ESP32-S3 board with STEMMA-compatible hardware wiring as described in the project instructions. The hardware setup is intended to support both a straight key and an iambic paddle.

Future versions may explore support for K1EL-style keyer interfaces or adapters, but current full timing analysis is based on Morsewurst-compatible USB CDC Serial JSON telemetry.

Build the Morsewurst Keyer

Morsewurst is designed primarily for the custom ESP32-S3-based Morsewurst Keyer. The build guide explains the required parts, wiring, Arduino IDE settings, sidetone circuit, display setup and USB CDC Serial telemetry format.

The keyer supports both a straight key and an iambic paddle. Other hardware can be compatible if it sends the same line-based JSON timing telemetry over USB CDC Serial.

Windows installers

Available Windows installer builds are listed below by version. Click a file name to download that installer.

ESP32 firmware

Available ESP32 firmware builds are listed below by version. Click a file name to download that firmware.

File Version Date Size
morsewurst_keyer_1_0.ino Download Download Latest Download 2026-05-11 47.0 KB