Skip to content

Morse Walker is a CW pileup trainer inspired by VE3NEA's Morse Runner with modes such as POTA, SST, and CWT, plus beginner-friendly features, including adjustable speeds and Farnsworth spacing.

License

Notifications You must be signed in to change notification settings

sc0tfree/morsewalker

Repository files navigation

Morse Walker Morse Walker logo

Morse Walker is a web-based CW pileup training application inspired by VE3NEA's Morse Runner. This tool allows amateur radio operators to practice different contesting and activation scenarios, improve their pileup handling skills, and enhance their overall proficiency in CW.

Visit MorseWalker.com to start practicing your CW pileup skills!

Supported Modes

  • Single Caller - only one station responding at a time.
  • Basic Contest - exchange callsign and serial number.
  • POTA Activator - exchange callsign and state in a POTA-style format.
  • CW Ops Test (CWT) - exchange callsign, name and CW Ops number in the CWT QSO format.
  • K1USN SST - exchange callsign, name, and state in the SST QSO format.

How to "Cheat"

To help you get started, or to diagnose software issues, Morse Walker includes a "cheat" mode that displays the callsign and other information of the responding stations. To see this, open your browser's JavaScript console.

How it Works

Morse Walker leverages the Web Audio API to generate realistic CW tones. It generates randomized station objects, each containing its own cw player (with unique wpm, tone, and volume) that is driven by an OscillatorNode within a shared AudioContext. A GainNode is added to simulate optional QSB, which is controlled via depth, frequency, and randomized phase offsets for natural variation. The volumes of grouped oscillators (i.e., responding stations in a pileup) are normalized to prevent audio popping. The shared AudioContext allows fore more efficient resource management, enabling multiple stations to play simultaneously without any significant performance degradation.

View the JSDocs at https://morsewalker.com/docs.

Local Development

Prerequisites

  • Node.js and npm
  • A modern web browser

Installation

  1. Clone the repository: git clone https://github.com/sc0tfree/morsewalker.git && cd morsewalker
  2. Install dependencies: npm install
  3. Start the development server: npm start

This will open the application in your default browser.

Building for Production

To build the project for production, run: npm run build

The build files will be located in the dist directory.

Feedback and Contributions

Morse Walker is currently in beta, and your feedback is invaluable!

If you encounter any bugs or have feature requests, submit a GitHub issue, or email me at [email protected].

Or, if you're feeling adventurous, fork the repository and submit a pull request!

About

Morse Walker is a CW pileup trainer inspired by VE3NEA's Morse Runner with modes such as POTA, SST, and CWT, plus beginner-friendly features, including adjustable speeds and Farnsworth spacing.

Topics

Resources

License

Stars

Watchers

Forks