Update tracking.py changing the frac_pp for bands in setup_tracking_params #372
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
this pull request includes work done in LATR high bay cooldown, Princeton testbed, TSAT (led by @yuhanwyhan) and Cornell testbed led by @yaqiongl
We noticed a failure mode during the LATR high bay cooldown of the setup_tracking_params.
The failure mode was then repeated in TSAT.
The core issue is setup_tracking_params shouldn't set different fraction_full_scale for different SMuRF bands, since that parameters controls the FR current magnitude and there is only one FR current flowing trough each half of the UFM.
(There should be one fracc_pp for all bands, otherwise the previous band will have tracking issue since the tracking is done from band 0~7 in series but there is only one current flowing through all of them. Currently setup_tracking_params assigns 8 different numbers to all 8 bands )
Instead, the script should set one fixed fraction_full-scale for half UFM and set different lms_freq for each individual smurf band.
the failure mode was recorded using Mv12 in TSAT.
when running
tracking_res = tracking.setup_tracking_params( S, cfg, [0,1,2,3,4,5,6,7], show_plots=True, update_cfg=True )
the script returns to a good tracking summary plot since the result shown in this plot is from the individual result of the band being tracked.
However, when taking noise right after, the noise is high for multiple bands
this failure mode remains the same even with a more accurate intial frac pp
without changing anything related to RF power but only tracking all bands again with the same frac_pp:
for band in [0,1,2,3,4,5,6,7]: S.tracking_setup(band,reset_rate_khz=4,fraction_full_scale=0.368, make_plot=True, save_plot=True, show_plot=True,channel=S.which_on(band)[0:3], nsamp=2**18, lms_freq_hz=None, meas_lms_freq=True,feedback_start_frac=1/12,feedback_end_frac=1,lms_gain=1)
This pull request is a fix of this failure mode by calculating the frac_pp using the first band, using it for all smurf bands, and then applying different lms_freq to suit individual band