MorseLabBaseMorseLabBase
Practice tool only - not a license exam, not emergency training certification. Audio stays in your browser.

Morse code trainer with Koch and Farnsworth controls

Translating once won’t stick. This trainer adds characters the Koch way (few letters at full character speed) and stretches gaps the Farnsworth way so you learn sound patterns instead of counting dits. Settings and a simple local progress note live in your browser — no account.

Koch / Farnsworth · Group
• • • • •
Hit Play group to hear a burst.
Accuracy
0%
Lesson set
KM
Advertisement320 × 100

When to use

Daily 10–15 minute sessions; breaking a speed plateau; starting from a small Koch subset without installing desktop software; returning after a long break with honest character speed.

When not

If you only need a one-off translation, use the translator. Pure copy-from-audio drills without lesson gating: listening practice. Sending practice: keyer. License exams are not graded here.

Assumptions

Default suggestion Char WPM ≈ 20 with Farnsworth effective speed lower (e.g. 5–15) until gaps close. Accuracy before unlocking the next character is local and approximate — we don’t claim CW Academy enrollment credit.

Examples

Input

Char 20 WPM · Farnsworth 5 · set {K, M}

Result

Hear short groups → type → unlock next letter near ≥90% on the set

Input

Same set · Farnsworth raised to 12

Result

Tighter gaps, same character speed — typical weekly progression

Input

Temptation: drop Char WPM to 8

Result

Avoid — lower Farnsworth instead so characters stay honest

Counting dits feels easier and teaches the wrong skill.

How it works

  1. Koch: start with a small set; add a character after you copy the set reliably.
  2. Farnsworth: keep character elements fast; stretch silence between letters/words toward Effective WPM.
  3. Feedback shows expected vs typed; set size can persist in localStorage on this device.
  4. Play schedules tones via the shared timing engine after a user gesture.

Char elements @ Char WPM · letter/word gaps stretched toward Farnsworth WPM · dit ms ≈ 1200 / CharWPM

Gotchas

  • Slowing character WPM to “make it easier” teaches counting — drop Farnsworth instead.
  • Marathon sessions burn you out; short daily blocks beat weekend cramming.
  • People searching “morse code practice” often want this page or listen — not another translator clone.
  • Clearing site data resets local progress; there is no cloud restore.

Compare

Copy-only: listen. Send-only: keyer. Speed check: WPM test. Beginner map: for/learn. Ham landing: for/ham. Instant convert: translator.

Why Koch + Farnsworth together

A sane weekly rhythm

Koch keeps the character set small and the element speed honest, so you learn sound patterns instead of counting dits. Farnsworth stretches the silence between letters so your brain has time to answer without slowing the characters into a different language.

  • 10–15 minutes most days beats a Sunday marathon.
  • Raise Farnsworth WPM before you raise character WPM.
  • When the set feels easy, unlock the next letter — don’t inflate speed to feel productive.

Local progress

Set size can persist in localStorage on this browser. There is no cloud account and no CW Academy credit. Clearing site data resets the ladder — export nothing; just keep practicing.

Related practice

Open-ended copy without unlocks: listen. Sending: keyer. Ego check: WPM test. Beginner map: for/learn. Ham map: for/ham.

Common questions

Direct answers — no synonym padding.

Learn a tiny set at full character speed; add letters only after you copy the set reliably.

Related tools

Practice tool only — not a license exam, not emergency training certification. See Methodology and Terms.