SCPI server will not go into HIGH gain
Posted: Wed Aug 21, 2019 8:01 pm
All,
I am having some issues getting the SCPI server to use the HV gain.
Looking at the api/src/acq_handler.c file.
gain_ch_a and gain_ch_b are used to store the gain, and it is set
to "RP_LOW" by default.
The function acq_SetGain is used to set the new gain.
In this function, first the current value is stored in case the new value fails.
And the current threshold is stored also.
Then the new gain is put into the "gain" variable.
Then the threshold is set using the new gain(maybe).
I am not sure the threshold is updated as it looks like this
function gets the gain from gain_ch_a or gain_ch_b that have not
been updated.
Then if there was an error the threshold is back using the old gain(maybe, see above).
If there was no error then the "setEqFilters" function is run and the new gain values
should be passed to the fpga. But like the threshold function the gain is pulled from
gain_ch_a or gain_ch_b, and they was never updated. In fact I do not see any place
in the code that sets gain_ch_a or gain_ch_b other then the default value that is
set when the variable is defined.
Can some one verify this bug?
Or am I missing something something in the code.
I guess for now I can just change the default to RP_HIGH when gain_ch_a or gain_ch_b
is defined. But then I would have to recompile each time the lv/hv jumper is changed.
Thanks for any help.
Jim Martz
I am having some issues getting the SCPI server to use the HV gain.
Looking at the api/src/acq_handler.c file.
gain_ch_a and gain_ch_b are used to store the gain, and it is set
to "RP_LOW" by default.
The function acq_SetGain is used to set the new gain.
In this function, first the current value is stored in case the new value fails.
And the current threshold is stored also.
Then the new gain is put into the "gain" variable.
Then the threshold is set using the new gain(maybe).
I am not sure the threshold is updated as it looks like this
function gets the gain from gain_ch_a or gain_ch_b that have not
been updated.
Then if there was an error the threshold is back using the old gain(maybe, see above).
If there was no error then the "setEqFilters" function is run and the new gain values
should be passed to the fpga. But like the threshold function the gain is pulled from
gain_ch_a or gain_ch_b, and they was never updated. In fact I do not see any place
in the code that sets gain_ch_a or gain_ch_b other then the default value that is
set when the variable is defined.
Can some one verify this bug?
Or am I missing something something in the code.
I guess for now I can just change the default to RP_HIGH when gain_ch_a or gain_ch_b
is defined. But then I would have to recompile each time the lv/hv jumper is changed.
Thanks for any help.
Jim Martz