Driver for Rhode & Schwarz SGS100A doesn't reflect actual software/hardware options on a given instrument
- Dominant language
- Python
- Stars
- 459
- Forks
- 359
- Avg merge
- 3d 6h
- Merged PRs (30d)
- 73
Description
Rhode & Schwarz SGS100A can come with different software/hardware options e.g. IQ modulation is a hardware option not available on all units. Currently parameters in the driver are added for settings that might not be available or hardware that is not present. Trying to set these seems to silently fail.
Example of relevant commands are:
```
# Returns list of hardware options:
sgs100A_handle.ask(':SYSTem:SOFTware:OPTion1:NAME?').split(',')
>>> ['"SGS-B26"', '"SGS-B106V"', '"SGS-B112V"']
# Returns list of software options:
sgs100A_handle.ask(':SYSTem:SOFTware:OPTion2:NAME?').split(',')
>>> ['"SGS-K22"']
```
The software option `SGS-K22` means that pulse modulation is available in this unit.
Options `'"SGS-B106V"', '"SGS-B112V"'` means that IQ modulation is installed and the frequency range goes up to 12.75 GHz (instead of 6 GHz).
A common thing is that IQ modulation is not installed in which case all the parameters related to IQ modulation shouldn't be added to the instrument. (Note that this is not a complete list of options.)
Would be good to map out the options we are using and only add the relevant parameters in the driver if the options are present on a given instrument.
@WilliamHPNielsen
Contributor guide
Research direction
Start at the SGS100A driver entry point and inspect how sgs100A_handle queries :SYSTem:SOFTware:OPTion1:NAME? and :OPTion2:NAME?. Map the options used by the driver, then ensure parameters are added only when their corresponding hardware or software option is present. Done means unavailable IQ, pulse-modulation, and frequency-range settings are not exposed or silently accepted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100