[docs](trx-rs): document SoapySDR squelch settings

Co-authored-by: OpenAI Codex <codex@openai.com>
Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
2026-03-05 22:43:32 +01:00
parent 890abcdc24
commit 3d0cdbd181
3 changed files with 30 additions and 0 deletions
+6
View File
@@ -122,6 +122,12 @@ Notes:
- `mode` (`string`, default: `"auto"`): `"auto"` enables hardware AGC (falls back to `"manual"` with a warning if the device does not support it); `"manual"` uses the fixed `value`. - `mode` (`string`, default: `"auto"`): `"auto"` enables hardware AGC (falls back to `"manual"` with a warning if the device does not support it); `"manual"` uses the fixed `value`.
- `value` (`f64`, default: `30.0`): Gain in dB. Used only when `mode = "manual"`. - `value` (`f64`, default: `30.0`): Gain in dB. Used only when `mode = "manual"`.
### `[sdr.squelch]`
- `enabled` (`bool`, default: `false`): Enables virtual software squelch for demodulated audio except WFM on the primary SDR channel.
- `threshold_db` (`f32`, default: `-65.0`, valid: `-140..=0`): Open threshold in dBFS.
- `hysteresis_db` (`f32`, default: `3.0`, valid: `0..=40`): Close hysteresis in dB.
- `tail_ms` (`u32`, default: `180`, valid: `0..=10000`): Tail hold time after signal drops below threshold.
### `[[sdr.channels]]` ### `[[sdr.channels]]`
Defines one virtual receiver channel within the wideband IQ stream. At least one channel is required when using the `soapysdr` backend. The **first** channel in the list is the *primary* channel: `set_freq` and `set_mode` from rig control apply to it, and `get_status` reads from it. Defines one virtual receiver channel within the wideband IQ stream. At least one channel is required when using the `soapysdr` backend. The **first** channel in the list is the *primary* channel: `set_freq` and `set_mode` from rig control apply to it, and `get_status` reads from it.
+18
View File
@@ -224,6 +224,18 @@ value = 30.0 # dB; ignored when mode = "auto"
Advanced per-element gain is out of scope for this phase (no `lna`/`vga`/`if` sub-keys initially). Advanced per-element gain is out of scope for this phase (no `lna`/`vga`/`if` sub-keys initially).
### 4.1 Virtual Squelch
Software squelch is configured globally under `[sdr.squelch]` and currently applies to the primary channel's demodulated audio path except WFM.
```toml
[sdr.squelch]
enabled = false
threshold_db = -65.0 # dBFS open threshold
hysteresis_db = 3.0 # dB close hysteresis
tail_ms = 180 # hold time after signal drops
```
--- ---
## 5. Filter Configuration ## 5. Filter Configuration
@@ -311,6 +323,12 @@ center_offset_hz = 200000 # SDR tunes this many Hz below dial frequency
mode = "auto" mode = "auto"
value = 30.0 # Effective only when mode = "manual" value = 30.0 # Effective only when mode = "manual"
[sdr.squelch]
enabled = false
threshold_db = -65.0
hysteresis_db = 3.0
tail_ms = 180
[[sdr.channels]] [[sdr.channels]]
id = "primary" id = "primary"
offset_hz = 0 offset_hz = 0
+6
View File
@@ -128,6 +128,12 @@ wspr_file = "TRXRS-WSPR-%YYYY%-%MM%-%DD%.log"
# mode = "auto" # mode = "auto"
# value = 30.0 # value = 30.0
# #
# [trx-server.sdr.squelch]
# enabled = false
# threshold_db = -65.0
# hysteresis_db = 3.0
# tail_ms = 180
#
# [[trx-server.sdr.channels]] # [[trx-server.sdr.channels]]
# id = "primary" # id = "primary"
# offset_hz = 0 # offset_hz = 0