Skip to content

SoapySDR: Allow channel selection by using the subdev device argument#416

Merged
rjonaitis merged 5 commits intomyriadrf:masterfrom
holaguz:feat/subdev
May 15, 2025
Merged

SoapySDR: Allow channel selection by using the subdev device argument#416
rjonaitis merged 5 commits intomyriadrf:masterfrom
holaguz:feat/subdev

Conversation

@holaguz
Copy link
Contributor

@holaguz holaguz commented May 14, 2025

This change implements channel selection by specifying the subdev argument in the SoapySDR string. Some programs allow using only one channel (but won't let you select which one), or require you to setup multiple streams to access the higher numbered channels, even if you only care about one.

This has been tested successfully with SoapySDRServer 0.5.2 and Gqrx 2.17.4.

For Gqrx, using the string soapy=0,driver=lime,serial=XXXXXXXXXXXXX,subdev=0 selects the first channel, and setting subdev=1 uses the second channel.

On SoapySDRServer it was tested using satnogs-client, specifying the arguments as driver=remote,remote:driver=lime,serial=XXXXXXXXXXXXX,subdev=<channel>

You can see https://network.satnogs.org/observations/11590367/ and https://network.satnogs.org/observations/11590376/ for two satellite observations made using channel 0 (VHF) and channel 1 (UHF) (check the metadata tab)

@holaguz
Copy link
Contributor Author

holaguz commented May 15, 2025

renamed subdev to channel and specified that it should be a list of integers separated by spaces.

added an error log when the channel string is invalid:
[ERROR] Couldn't parse 'channels' string 'a 1': it should be a list of integers separated by spaces.

@holaguz holaguz requested a review from rjonaitis May 15, 2025 17:26
@rjonaitis rjonaitis merged commit c5bb3c6 into myriadrf:master May 15, 2025
4 checks passed
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.

2 participants