Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

spectran_http_source: Modify mechanism how RTSA Suite Pro is interfaced using the HTTP interface #1354

Open
hb9fxq opened this issue Mar 8, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@hb9fxq
Copy link
Contributor

hb9fxq commented Mar 8, 2024

The spectran_http_source should be used to establish a connection to an Aaronia RTSA Suite Pro mission, which provides a combination of an IQ Source, such as the 'Spectran V6,' and an 'IQ Demodulator' block connected to an 'HTTP Server' block.

(RTSA [IQ Source] -> [IQ Demodulator] -> [HTTP Server]) ---------<http>------- (SDR++ [spectran_http_source])

Currently, the spectran_http_source is accessing the '/control' endpoint, which is not intended for this use case. It should instead utilize the more adaptable '/remoteconfig' endpoint offered by the HTTP Server, allowing for remote control of blocks within the mission's block graph.

As a result, the command structure for the ::setCenterFrequency request needs to be updated to:

{
  "receiverName": "Block_IQDemodulator_0",
  "simpleconfig": {
    "main": {
      "centerfreq": 54664,
      "samplerate": 4000000,
      "spanfreq": 4000000
    }
  }
}

The changes proposed in this pull request https://github.com/AlexandreRouma/SDRPlusPlus/pull/1352/files serve as a draft for the required mechanism.

The device parameters in the SDR++ UI 'Source' section should therefore be expanded to include:

  • A dropdown list of possible sample rate values, with lower values for HF bands and higher rates limited to a performance-realistic range manageable via the HTTP interface.
  • The RTSA IQ Demodulator Block API Name.

When the connect button is initially pressed, the ::setCenterFrequency method should be invoked once, to ensure the selected tuning range is initiated by SDR++ and not the RTSA

Minor corrections:

The disconnect method is currently causing an error because it attempts to unbind 'onCenterFrequencyChanged' twice, instead of unbinding 'onSamplerateChanged':

The disconnect method throws an error, because it tries to unbind the “onCenterFrequencyChanged” twice instead of “onSamplerateChanged”

_this->client->onCenterFrequencyChanged.unbind(_this->onFreqChangedId);
_this->client->onCenterFrequencyChanged.unbind(_this->onSamplerateChangedId);

An example mission is provided at: https://github.com/AlexandreRouma/SDRPlusPlus/files/14535971/example_mission_http_iqdemod.zip

image

@hb9fxq hb9fxq added the enhancement New feature or request label Mar 8, 2024
@hb9fxq
Copy link
Contributor Author

hb9fxq commented Mar 8, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant