MorseLabBaseMorseLabBase
Practice tool only. Audio stays in your browser — not a license exam or emergency certification.

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.

Better elsewhere

One-off translation → translator. Open-ended ear copy → listen. Sending → keyer.

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.

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.
  • 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 you can answer without slowing the characters into mush.

  • 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 just to feel busy.

Local progress

Set size can persist in localStorage on this browser. There is no cloud account. Clearing site data resets the ladder.

Related practice

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

Common questions

Short answers from real friction points.

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

Related tools

Practice tool only. See Methodology and Terms.