Skip to content

Add RigExpert Fobos SDR source#432

Open
UR4MCB wants to merge 1 commit into
jketterl:developfrom
UR4MCB:fobos-rf-soapy-source
Open

Add RigExpert Fobos SDR source#432
UR4MCB wants to merge 1 commit into
jketterl:developfrom
UR4MCB:fobos-rf-soapy-source

Conversation

@UR4MCB

@UR4MCB UR4MCB commented Jun 6, 2026

Copy link
Copy Markdown

Adds RF-mode support for RigExpert Fobos SDR receivers through the existing SoapySDR / soapy_connector path. The implementation adds a new fobos source type, feature detection for SoapySDR driver=fobos, and Fobos-specific RF controls for clock source, LNA and VGA. HF Direct Sampling is intentionally not included because Fobos direct sampling provides HF1/HF2 real-channel samples, not normal I/Q.

@UR4MCB

UR4MCB commented Jun 6, 2026

Copy link
Copy Markdown
Author

Additional local hardware validation completed.

Test setup:

  • RigExpert Fobos SDR, HW revision 3.0.0
  • Agile firmware 3.1.0
  • SoapyFobosSDR detected as driver=fobos
  • soapy_connector 0.7.0-dev
  • OpenWebRX v1.3.0-dev
  • Ubuntu 26.04

Validated behavior:

  • The new fobos source type is detected by OpenWebRX.
  • The receiver appears in the OpenWebRX Settings UI as RigExpert Fobos SDR.
  • RF-mode profile starts successfully through soapy_connector.
  • FM broadcast reception works; audio plays in the browser.
  • The Settings UI exposes the Fobos-specific controls:
    • Clock source
    • Fobos LNA
    • Fobos VGA
  • Saving settings from the UI works.
  • Changing profiles updates frequency through the control socket.
  • Changing profile-specific LNA/VGA values is translated correctly to rf_gain, for example:
    • LNA=0,VGA=12
    • LNA=2,VGA=20
  • No unknown key errors for fobos_lna / fobos_vga.
  • No direct_samp option is sent in this RF-only implementation.
  • Clean shutdown confirmed.

Scope note:

HF Direct Sampling is intentionally not enabled in this PR. According to the Fobos SDR API documentation, direct sampling returns interleaved HF1/HF2 real-channel samples rather than normal complex I/Q samples. Therefore, generic OpenWebRX complex-IQ handling is not sufficient for that mode without a dedicated direct-sampling processing path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant