Skip to content

Phone/CW Applet

Overview

The Phone/CW applet is a mode-aware transmit panel. It shows Phone controls (mic, processor, monitor) in voice modes and automatically switches to CW controls (delay, speed, sidetone, iambic, pitch) when the active slice is in CW mode. ALC gauges appear on both the Phone and CW sub-panels, both driven by the software ALC meter (MeterModel::swAlcChanged, post-SSBMeter-peak dBFS, #2552), replacing the previous HWALC (RCA voltage) path that produced meaningless readings.

The Compression gauge is gated on the radio's interlock TRANSMITTING state (reads 0 during RX). Breakin fully honors the radio's break_in setting β€” no auto-PTT envelope forces TX. The sidetone bus is shared with Quindar tones (mutually exclusive at the mode level).

In v26.5.3 the CW sidetone now routes to the user-selected audio output instead of the default output (#2899).

In v26.6.1 the applet now properly inherits the active theme's color palette. Sliders use the primary slider style (applyPrimarySliderStyle) instead of hardcoded color values, and label colors follow the theme's secondary text color ({{color.text.secondary}}). The panel container is styled using theme::setContainer for consistent appearance across all themes.

Opening the Phone/CW Applet

  1. Click the P/CW tray button on the right sidebar.

The applet automatically shows Phone controls when the active slice is in a voice mode (LSB, USB, AM, FM, etc.) and CW controls when the active slice is in CW or CWL mode.

Phone Panel Controls

Control Type Default Valid range Behavior
Level Meter β€” -40 to +10 dBFS (red > 0) Shows microphone input peak level in dBFS. Suppressed to -150 when met_in_rx is off and not transmitting (v26.5.3 applies suppression immediately on state changes).
Compression Meter β€” 0 to -25 dB (reversed fill) Shows speech compression amount in dB. Gated on radio interlock TRANSMITTING state and speech processor enable. v26.5.3: MeterModel COMPPEAK (positive 0–25 dB) converted to negative gauge display.
ALC Meter β€” -20 to 0 dBFS (red > -3) Shows automatic level control from MeterModel::swAlcChanged. Fills right-to-left. Initialized to -20 dBFS in v26.5.3.
Mic profile Combo box β€” Populated from radio Loads the named mic processing profile.
Mic source Combo box β€” MIC, BAL, LINE, ACC, PC Selects microphone input source.
Mic gain Slider 50 0-100 Adjusts mic input level. For PC source uses local PcMicGain persistence.
+ACC Toggle button β€” β€” Enables the accessory mic input mix.
PROC Toggle button β€” β€” Toggles the speech processor.
NOR/DX/DX+ Slider 0 0 (NOR), 1 (DX), 2 (DX+) Three-position processor level.
DAX Toggle button β€” β€” Enables DAX as the TX audio source.
MON Toggle button β€” β€” Enables TX sidetone monitor.
Monitor volume Slider β€” 0-100 Sets sideband monitor volume.

CW Panel Controls

Control Type Default Valid range Behavior
ALC Meter β€” -20 to 0 dBFS (red > -3) Mirrors Phone-panel ALC gauge. Fills right-to-left. Initialized to -20 dBFS in v26.5.3.
Delay Slider + edit 500 0-2000 ms (step 10) Sets CW break-in delay. Type values 0-2000 directly.
Speed Slider + edit 20 5-100 WPM Sets CW keying speed. Type values 5-100 directly.
Sidetone Toggle button β€” β€” Toggles CW sidetone monitor. Controls both radio DAX-fed monitor and local low-latency CwSidetoneGenerator in lockstep. Pitch and pan always follow the radio's cw_pitch and mon_pan_cw automatically. v26.5.3: routes to user-selected audio output instead of default.
Sidetone volume Slider + edit 50 0-100 Sets CW monitor volume. Controls both radio-side and local sidetone volumes. Type values 0-100 directly.
L / R pan (CW) Slider 50 0-100 Sets CW monitor stereo pan. Double-click recenters to 50 (centre).
Breakin Toggle button β€” β€” Toggles full break-in (QSK). CW keyboard/MIDI paths fully honor this setting.
Iambic Toggle button β€” β€” Toggles iambic paddle keyer.
Pitch < / > Edit + buttons 600 100-6000 Hz (step 10) QLineEdit with < / > buttons. Type values 100-6000 or click buttons to step by 10 Hz.

Editing CW Values by Typing

You can type a precise number directly into any of the four CW value fields (Delay, Speed, Sidetone Volume, Pitch) instead of dragging a slider or clicking step buttons. This matches native SmartSDR behavior.

Steps

  1. Open the Phone/CW applet with the active slice in CW mode.
  2. Locate the CW control you want to edit: Delay, Speed, Sidetone volume, or Pitch. Each is next to its corresponding slider.
  3. Click inside the number field (a QLineEdit). The field will show a text cursor.
  4. Type the desired value using your keyboard.
  5. Press Enter or click elsewhere to apply the value.

Value ranges for direct entry

Control Default Valid range
Delay 500 0-2000 ms (step 10)
Speed 20 5-100 WPM
Sidetone volume 50 0-100
Pitch 600 100-6000 Hz (step 10)

ALC Gauges (v26.5.1)

Both the Phone panel and CW panel contain an ALC gauge. These gauges are identical mirrors reading from the same MeterModel::swAlcChanged source. This ensures that SSB operators watching mic gain see the same indicator CW operators use to verify clean keying envelope shape.

  • Range: -20 dBFS (empty) to 0 dBFS (full)
  • Red zone: > -3 dBFS
  • Fill direction: Right-to-left (empty at -20, fills leftward toward 0)
  • Scale markings: -20, -15, -10, -5, 0 dBFS
  • Initial state: Both gauges start at -20 dBFS on applet construction (v26.5.3).

Troubleshooting

  • Typed value snaps back to previous value β€” The radio may have rejected the value. Ensure your entry is within the valid range shown above. For Delay values, the radio emission no longer snaps the slider back in v0.9.8 (#2428).
  • Level meter stays at -150 after stopping transmit β€” In v26.5.3 the level meter is suppressed whenever receiving with met_in_rx off. Check Settings > Appearance > Disable level meter during receive if you see unexpected -150 readings in RX.
  • Compression gauge shows unexpected values β€” v26.5.3 changed the COMPPEAK interpretation to positive 0–25 dB; the gauge face reverses to -25–0 dB. If you see reversed scaling, verify you are running v26.5.3 or later.
  • Colors don't match the active theme β€” v26.6.1 fixed theme inheritance for all UI elements in this applet. If colors appear hardcoded (e.g., blue on black regardless of theme), verify you are running v26.6.1 or later.
⚑ Athena AetherSDR Assistant
Hi! I'm Athena, the AetherSDR AI assistant. Ask me anything about installation, configuration, or troubleshooting.