v7.2.0
Tested on SLAC cryostat on an SMB in SLAC CMBS4 DR cooldown #20. Test notebook attached. Found minor bug in plot_tune_summary
function which chokes on unassigned channels.
Known issues
Summary
Much of this release is new functionality developed as a part of the SO SAT1 integration at UCSD. In particular, a number of PRs deal with downsampling (PRs #733 and #739) and diagnostic and configuration capabilities for the external SMuRF timing system (PRs #738 and #746). Other functionality added in this release include:
- PV caching : if there are issues with EPICs calls using this release, it's likely due to this change, which changes the way
pysmurf
handles all EPICs calls under the hood. See #744 for more details. - Duplicate eta scan data bug : A subtle bug in
setup_notches
was preventing eta scanning on unassigned channels, instead returning duplicate data from an assigned channel for every unassigned channel instead. Unassigned channels will no longer be scanned by default, but can optionally scanned by providingscan_unassigned=True
as an argument tosetup_notches
. See #741 for more details. - No double setup by default : Some users report strange behavior for systems on which
setup
is run twice. Sincesetup
should only ever need to be run once, runningsetup
multiple times is no longer allowed by default, although it can be forced by passingforce_configure=True
tosetup
. However, users should be aware that the register which keeps track of whether or not a system has been configured,SystemConfigured
, is a software register and will not persist through a reboot of the rogue server. See #741 for more details.
In addition to some minor bug fixes (PRs #748 and #750), this release also includes the final configuration files and scripts that were used to qualify all of SO's SMuRF systems in PR #752.
@jlashner and @BrianJKoopman contributed PRs to this release.
The stable server Docker image uses the following firmware and config
Pull Requests Since release v7.1.0:
Client
- #733 - Modifies the
set_downsample_factor
function so that it will set the external bitmask if the downsampling mode is external, and adds @mhasself's dscounters module to pysmurf.client.util. - #738 - Adds new functions to utils submodule which implement more convenient getting/setting for timing modes.
- #739 - Bug fix for the
period_from_mask
function and changesget_downsample_factor
to work in external downsampling mode. - #741 - Bug fix for duplicate data when eta scanning unassigned channels, new
setup_notches
option to scan unassigned channels, andsetup
now checks if system has been configured and won't double configure unless forced. - #746 - Allows systems in slots 3-7 to be configured for fiber timing.
- #750 - Minor bug fix ;
grad_kernel_width
keyword wasn't being passed tofind_peak
in thesmurf_tune
submodule from thefind_all_peak
function. - #748 - Minor bug fix ;
show_plot
andsave_plot
keywords weren't being passed to thefind_all_peak
function in thesmurf_tune
submodule from thefind_freq
function - #752 - Final versions of the scripts and configuration files used to qualify all SO SMuRF systems at SLAC.
- #744 - Implements PV caching for all EPICs gets and sets to avoid cumulative overhead of large numbers of cagets/caputs.
- #755 - Removes remaining deprecated
set_rtm_slow_dac_enable
calls fromsmurf_command
submodule functions. - #751 - Adds gets for timing system data debug counters.
Other
- #732 - This adds all the dependencies listed in the requirements.txt file to the setup.py file, allowing a one-step installation via pip.
Does this PR break any interface?
- Yes
- No
Full Changelog: v7.1.0...v7.2.0