Table of Contents
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Introduction
Morse RX is a Morse code receiver that automatically detects and decodes incoming CW signals. Tune to the signal frequency and wait for clear audio — the app handles tone frequency detection, WPM estimation, and character decoding without manual configuration.
The decoder uses automatic tone and speed detection, which may take a few moments to lock onto a signal. Decoding quality depends heavily on signal clarity.
Controls
Top row:
- Frequency: Click to open the numeric keypad, or use the rotary encoder for fine tuning.
- AMP: RF preamplifier — 0 = off, 1 = on (+14 dB). Avoid enabling near strong signals.
- LNA: Low Noise Amplifier gain (0–40 dB).
- VGA: Variable Gain Amplifier / baseband gain (0–62 dB).
- Volume: Audio output level.
Second row:
- Squelch (0–99): Sets the squelch level. Signals below this threshold are ignored. Adjust to suppress background noise without cutting off the desired signal.
- Mode: Selects the demodulation mode —
AM/CW,NFM,AM/DSB,AM/USB, orAM/LSB. UseAM/CWfor standard HF CW,NFMfor VHF/UHF Morse beacons. - Speed: XX wpm: Displays the estimated receive speed in words per minute. This is calculated automatically from the detected dit/dah timing. If decoding goes wrong the value will visibly adapt as the algorithm self-corrects.
Third row:
- Log checkbox: Enables logging to a daily file in the
LOGS/directory on the SD card. Each log session is stamped with a timestamp header and the selected mode. - Tone: XXXX Hz: Displays the detected audio tone frequency of the incoming Morse signal. The colour indicates whether the tone is in a good range for decoding:
- Green — 580–1220 Hz: optimal range
- Yellow — 400–580 Hz or 1220–1400 Hz: acceptable but at the edge
- Red — below 400 Hz or above 1400 Hz: outside the reliable decoding range; results will be poor
Fourth row:
- Last seq.: Shows the most recently detected dit/dah pattern before it was decoded into a character, useful for debugging weak or noisy signals.
Decoded text console:
The large area in the lower half of the screen shows the decoded characters. The colour of each character indicates the decoder's confidence:
- Green — confidence ≥ 90%: high confidence
- Yellow — confidence 80–90%: moderate confidence
- Red — confidence < 80%: low confidence, likely incorrect
- White — spaces and unmatched sequences
Bottom:
- CLR: Clears the decoded text console.
Tips for best results
The decoder requires a clean, steady audio tone in the 400–1400 Hz range. Before starting:
- Adjust frequency so the signal produces a clear audio tone — listen with the speaker enabled.
- Use a narrowband mode (
AM/CWorNFM) and set gain so the signal is strong but not clipping (aclippingwarning appears on screen if the input is saturated). - Keep the scan range small and avoid strong nearby interferers.
- If the tone frequency display shows red and jumps around, there is too much noise or the wrong mode is selected.
Settings persistence
The selected demodulation mode is saved automatically and restored on next launch. Settings are stored in SETTINGS/rx_morse_radio.ini on the SD card.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Start here
Contributors
How to collaborate
Contributing Guidelines
How to ask questions correctly
Hardware
- PortaPack Versions (which one to buy)
- Features
- HackRF Versions
- Description of the hardware
- Enclosure/cases
- Repairs
- Mods
User manual
Intended use and Legality
- Usage cautions
- First steps
- Firmware update procedure
- User interface
- Powering the PortaPack
- Troubleshooting
- Won't boot
- Config Menu
- Firmware upgrade
- Diagnose firmware update in Windows
- Receive Quality Issues
- No TX/RX
- TX Carrier Only
- H2+ speaker modifications
- Dead Coin Cell Battery
- Factory Defaults
- SD card not recognized by PC with the SD-card over USB selected
- DFU overlay
- Full reset
- SolveBoard
- How to Format SDCard
- What if I don't like some of the apps
Applications
- 📥 Receivers
- 📤 Transmitters
- ADS-B(S) TX
- Adult Toys
- APRS TX
- BHT Xy/EP
- BLE TX
- BLESpam
- Burger Pager
- CVS Spam
- EPIRB
- FlipperTX
- GPS Sim
- Hopper
- Jammer
- KeeLoq TX
- Key fob TX
- LGE Tool
- MDC-1200 TX
- Morse TX
- OOK
- OOK Brute
- OOK Editor
- P25 TX
- POCSAG TX
- RDS
- RTTY TX
- SAME TX
- Signal gen
- Soundboard
- Spectrum Painter
- SSTV
- TEDI/LCR
- TouchTunes
- TPMS TX
- 🔄 Transceivers
- 🟡 Recon
- 🔴 Capture
- ▶️ Replay
- 🖲️ Remote
- 🔍 Looking Glass
- 🛠️ Utilities
- 🎮 Games
- ⚙️ Settings
- 💻 HackRF Mode
Misc
Developer Manual
- Compilation of the firmware
- Compile on WSL with ninja
- How to compile on Windows faster with WSL 2
- Using Docker and Kitematic
- Docker command-line reference
- Using Buddyworks and other CI platforms
- Notes for Buddy.Works (and other CI platforms)
- Using ARM on Debian host
- All in one script for ARM on Debian host
- Compile on Arch based distro (exclude Asahi), or other weird distros
- Dev build versions
- Notes About ccache
- Create a custom map
- Code formatting
- PR process
- Description of the Structure
- Software Dev Guides
- Tools
- Research
- UI Screenshots
- Maintaining
- Creating a prod/stable release (Maintainers only)
- Maintaining rules
- Development States Notes
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Note
The wiki is incomplete. Please add content and collaborate.
Important
- This is a public wiki. Everything is visible to everyone. Don't use it for personal notes.
- Avoid linking to external tutorials/articles; they may become outdated or contain false information.