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

Morse code keyer practice with timing feedback

Decoding is only half of CW. Hold space (or the on-screen pad) for dahs, tap for dits, and compare your element lengths to the target WPM grid. This is a practice keyer in the browser — not a USB paddle driver for your radio.

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.

When not

Don’t expect rig control, sidetone through a real transmitter, contest logging, or HID paddle support in v1. For copy practice use listen. For structured unlocks use 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.
  • This is practice timing, not an FCC/exam requirement and not on-air keying.

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. Sounding “fine to you” is not the same as landing near the grid — glance at the feedback once or twice a session.

Hardware reality check

  • This is not a USB paddle HID driver and does not key a radio.
  • 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 so send and copy stay in the same skill neighborhood.

Common questions

Direct answers — no synonym padding.

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

Related tools

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