Skip to content

Phone/CW Applet

Overview

The Phone/CW applet is a mode-aware transmit panel that shows microphone, processor, and monitor controls in voice modes, and automatically switches to CW controls (delay, speed, sidetone, iambic, pitch) when the active slice is in CW mode. In v0.9.8, the four CW value labels (Delay, Speed, Sidetone Volume, Pitch) are now QLineEdit widgets with QIntValidator β€” click any value and type a number directly (SmartSDR parity). The single Sidetone toggle and volume slider drive both the radio's DAX-fed monitor and the client-side low-latency sidetone (CwSidetoneGenerator, ~10 ms latency) in lockstep β€” pitch and pan always follow the radio's cw_pitch and mon_pan_cw settings automatically (v0.9.1+). In v26.5.3 the CW sidetone now routes to the user-selected audio output instead of the default output (#2899). In v0.9.7, the Compression gauge is now gated on the radio's interlock TRANSMITTING state (not meter flow), so it reads 0 during RX; Breakin now fully honors the radio's break_in setting β€” no auto-PTT envelope forces TX any more; the sidetone bus is shared with Quindar tones (mutually exclusive at the mode level). In v26.5.1, the ALC meter on both the Phone and CW sub-panels was rewired from HWALC (RCA voltage) to the software ALC meter (MeterModel::swAlcChanged, post-SSBMeter-peak dBFS, #2552) and a new CW-panel ALC gauge (identical to the Phone-panel ALC gauge) was added. In v26.5.3, the ALC gauges are initialized to their floor value (-20 dBFS) on startup, and the Level gauge is suppressed for all mic sources (including PC and RADE) when the Level Meter During Receive setting is off. The Compression gauge was corrected to accept a positive 0–25 dB compression value from MeterModel and invert it to the reversed gauge face (-25 = full, 0 = none). In v26.6.1, all widget styling was migrated to the ThemeManager system β€” slider grooves, handle colors, label foregrounds, and push-button backgrounds now follow the active theme rather than hard-coded color constants (#2912).

Phone Controls

Control Kind Description
Level Meter Microphone input peak level in dBFS. Suppressed to -150 when met_in_rx is off and not transmitting, regardless of mic source.
Compression Meter Speech compression amount in dB (reversed fill: 0 dB = none, -25 dB = full). Corrected in v26.5.3 to accept positive 0–25 dB compression values. Gated on radio interlock TRANSMITTING state and speech processor enable; reads 0 dB during RX.
Mic profile Combo box Load named mic processing profile; calls TransmitModel::loadMicProfile.
Mic source Combo box Select microphone input source; calls TransmitModel::setMicSelection.
Mic gain Slider Adjust mic input level. For 'PC' source uses local PcMicGain persistence (radio reports mic_level=0 when source=PC).
+ACC Toggle button Enable the accessory mic input mix; calls TransmitModel::setMicAcc.
PROC Toggle button Toggle the speech processor; calls TransmitModel::setSpeechProcessorEnable.
NOR/DX/DX+ Slider Three-position processor level; calls TransmitModel::setSpeechProcessorLevel. Slider styling uses applyPrimarySliderStyle (theme-aware, v26.6.1).
DAX Toggle button Enable DAX as the TX audio source; calls TransmitModel::setDax.
MON Toggle button Enable TX sidetone monitor; calls TransmitModel::setSbMonitor.
Monitor volume Slider Set sideband monitor volume; calls TransmitModel::setMonGainSb. Slider styling uses applyPrimarySliderStyle (theme-aware, v26.6.1).
ALC (Phone panel) Meter Shows automatic level control reading from MeterModel::swAlcChanged (post-software-ALC SSB peak in dBFS). Fills right-to-left: empty at -20 dBFS, full at 0 dBFS. Rewired from HWALC (RCA voltage) to SW ALC meter in v26.5.1 (#2552). Initialized to -20 dBFS on startup in v26.5.3. Mirrored by an identical gauge on the CW sub-panel.

CW Controls

Control Kind Description Default Range
ALC (CW panel) Meter Mirrors the Phone-panel ALC gauge; both read from MeterModel::swAlcChanged for consistent readings across voice and CW. Uses HGauge::setFillFromRight mode: empty at -20 dBFS, full at 0 dBFS. Added in v26.5.1 (#2552) as part of the SW ALC meter split. Initialized to -20 dBFS on startup in v26.5.3. β€” -20 to 0 dBFS (red > -3)
Delay (CW) Slider + QLineEdit Set CW break-in delay. Click the value and type a number directly (0–2000). Calls TransmitModel::setCwDelay. In v0.9.8, setCwDelay caches the value immediately. Slider styling uses applyPrimarySliderStyle (theme-aware, v26.6.1). 500 0-2000 ms (step 10)
Speed (CW) Slider + QLineEdit Set CW keying speed. Click the value and type a number directly (5–100). Calls TransmitModel::setCwSpeed. Slider styling uses applyPrimarySliderStyle (theme-aware, v26.6.1). 20 5-100 WPM
Sidetone Toggle button Toggle CW sidetone monitor. Also enables/disables the client-side low-latency CwSidetoneGenerator in lockstep (v0.9.1+). Both the radio's DAX-fed monitor and the local PortAudio sidetone are controlled by this single button. Pitch and pan follow radio's cw_pitch and mon_pan_cw automatically. In v26.5.3, the local sidetone routes to the user-selected audio output (#2899). β€” β€”
Sidetone volume Slider + QLineEdit Set CW monitor volume. One slider controls both the radio-side (mon_gain_cw) and client-side sidetone volumes. Click the value and type a number directly (0–100). Slider styling uses applyPrimarySliderStyle (theme-aware, v26.6.1). 50 0-100
L / R pan (CW) Slider Set CW monitor stereo pan. Also applies constant-power pan to the local sidetone generator (v0.9.1+). Double-click recenters to 50 (centre). Slider styling uses applyPrimarySliderStyle (theme-aware, v26.6.1). 50 0-100
Breakin Toggle button Toggle full break-in (QSK). In v0.9.7, fully honors the radio's break_in setting: with Breakin ON key edges trigger TX and break_in_delay holds the relay; with Breakin OFF keys are queued and operator engages PTT manually. β€” β€”
Iambic Toggle button Toggle iambic paddle keyer; calls TransmitModel::setCwIambic. β€” β€”
Pitch < / > QLineEdit with buttons QLineEdit with < / > buttons (CwTriBtn). Type a value (100–6000) or click the buttons to step by 10 Hz. Calls TransmitModel::setCwPitch (v0.9.8, #2429). 600 100-6000 Hz (step 10)

Indicators

Indicator States Meaning
Level gauge -40 .. +10 dBFS Microphone peak level.
Compression gauge -25 .. 0 dB Speech compression amount (reversed fill). Corrected in v26.5.3 to accept positive 0–25 dB compression values.
ALC gauge (Phone) -20 .. 0 dBFS (fill from right) Automatic level control β€” post-software-ALC SSB peak, read from MeterModel::swAlcChanged. Initialized to -20 dBFS on startup.
ALC gauge (CW) -20 .. 0 dBFS (fill from right) Mirror of the Phone-panel ALC gauge, identically scaled. Initialized to -20 dBFS on startup.

Enable iambic paddle keying

Enable the radio's built-in iambic keyer so that a dual-lever paddle connected to the FLEX-8600 keys CW using the iambic mode. This lets you set keying speed and break-in behavior from within AetherSDR.

Before you start

  • AetherSDR must be connected to a FLEX-8600 radio.
  • The active slice must be in a CW mode. The Phone/CW applet automatically switches to the CW sub-panel when a CW slice is active.
  • A dual-lever paddle must be physically connected to the FLEX-8600's key jack.

Steps

  1. Click the P/CW tray button in the right sidebar to open the Phone/CW applet. If the applet is already visible, skip this step.
  2. Confirm the CW sub-panel is showing. If the active slice is in CW mode, the applet displays CW controls including Iambic, Speed (CW), Delay (CW), and Breakin.
  3. Click Iambic to enable the iambic paddle keyer. The button highlights when active.

Tips

  • For low-latency sidetone feedback when using a paddle, enable Sidetone in the CW sub-panel. The single Sidetone button and Sidetone volume slider control both the radio's DAX-fed monitor and the client-side low-latency sidetone (approximately 10 ms latency) in lockstep. Pitch and pan follow the radio's cw_pitch and mon_pan_cw settings automatically. In v26.5.3, the local sidetone routes to the user-selected audio output. See Listen to a TX sidetone monitor.
  • Adjust Speed (CW) before enabling Iambic to avoid sending at an unexpected rate. See Set CW keying speed in WPM.
  • If you want full QSK operation, also enable Breakin. In v0.9.7, Breakin is fully honored: with Breakin on, key edges trigger TX and break_in_delay holds the relay; with Breakin off, keys are queued and you engage PTT manually. The previous auto-PTT envelope that masked Breakin off and killed QSK hang time has been removed. To set a hang time instead, disable Breakin and set Delay (CW) to a non-zero value. See Set CW break-in delay.
  • In v0.9.8, the Delay (CW), Speed (CW), Sidetone volume, and Pitch values are now editable QLineEdit widgets. Click any value and type a number directly. The sliders update automatically when you finish editing, and vice versa.

Troubleshooting

  • The CW sub-panel is not visible, only Phone controls appear β€” The active slice is not in a CW mode. Switch the slice mode to CW or CW-USB/CW-LSB on the radio or in AetherSDR; the applet will switch automatically.
  • Iambic button is present but the paddle does not key β€” Verify the paddle is connected to the correct key jack on the FLEX-8600. The iambic keyer is a radio-side function; AetherSDR sends the enable command but physical keying depends on the hardware connection.
  • The Level gauge does not appear after connecting with mic source set to PC β€” In v26.5.3, the Level gauge is suppressed for all mic sources (including PC and RADE) when the Level Meter During Receive setting is off and the radio is not transmitting. If the gauge is missing during receive, enable Level Meter During Receive in the radio settings or begin transmitting. When transmitting, the Level gauge will appear regardless of the setting.
  • The Compression gauge shows a non-zero reading during receive β€” In v0.9.7, the Compression gauge is gated on the radio's interlock TRAN
⚑ Athena AetherSDR Assistant
Hi! I'm Athena, the AetherSDR AI assistant. Ask me anything about installation, configuration, or troubleshooting.