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

Morse code keyer practice with timing feedback

Hold space (or the on-screen pad) for dahs, tap for dits, and compare your element lengths to the target WPM grid. Browser timing practice — USB paddles and rig keying are out of scope for v1.

Straight key · target 15 WPM · dit 80 ms

Hold space or the pad — short = dit, long = dah.

Timing accuracy
0%
Elements you send appear here vs ideal dit/dah length.
Advertisement320 × 100

When to use

Checking whether your dahs are actually 3× dits; warming up send muscle memory; practicing a callsign or short phrase you already know by ear; pairing send with a listen session the same day.

Better elsewhere

No rig control, transmitter sidetone, contest logging, or HID paddle support in v1. Copy → listen. Koch unlocks → trainer.

Assumptions

Straight-key style timing (press duration = element length). Target WPM sets the ideal dit ms. Optional iambic/paddle modes are out of v1 unless explicitly shipped later. Local sidetone only.

Examples

Input

Target 15 WPM · send E / T / A

Result

Check whether your dah on T landed near 3× dit

Input

Target 20 WPM · send K (-.-)

Result

Review element bars vs ideal lengths

Input

Send your callsign slowly

Result

Muscle memory first, speed second

Pair with listen on the same characters later.

How it works

  1. Capture key-down / key-up timestamps from spacebar or pad.
  2. Classify dit vs dah vs gap against the target WPM grid.
  3. Show a simple timing accuracy readout for recent elements.
  4. Optional local sidetone follows your key-down — nothing is uploaded.

dit = 1200/WPM ms · dah = 3×dit · intra-char gap ≈ 1 dit · letter gap ≈ 3 dit · word gap ≈ 7 dit

Gotchas

  • Keyboard repeat and laptop trackpads add jitter — prefer spacebar or a dedicated on-screen key.
  • Mobile long-press menus can steal the gesture; use the on-screen pad.
  • “Sounding fine to you” ≠ correct timing; trust the bars once or twice a session.
  • Browser timing only — it does not key a radio or count as an exam score.

Compare

Ear copy: listen. Full learn path: trainer. Speed check: WPM test. Ham hub: for/ham. Translate: translator.

What “timing feedback” means

At a target WPM, a dit has an ideal length (~1200/WPM ms) and a dah is about three dits. The keyer watches how long you hold the key and compares elements and gaps to that grid. Glance at the bars once or twice a session — ear-alone timing often drifts.

Hardware reality check

  • No USB paddle HID driver and no radio keying from this page.
  • Laptop key-repeat and trackpads add jitter — prefer spacebar or the on-screen pad.
  • Mobile long-press menus can steal gestures; use the pad control.
  • Iambic A/B paddle modes are out of v1 unless explicitly enabled later.

Practice ideas

Send single letters you already copy well. Then your callsign. Then a short known phrase. Pair with listen the same day.

Common questions

Short answers from real friction points.

Not as a HID radio keyer in v1 — browser timing practice only.

Related tools

Practice tool only. See Methodology and Terms.