aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/python/usrp_mpm/periph_manager/x4xx.py
diff options
context:
space:
mode:
Diffstat (limited to 'mpm/python/usrp_mpm/periph_manager/x4xx.py')
-rw-r--r--mpm/python/usrp_mpm/periph_manager/x4xx.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/mpm/python/usrp_mpm/periph_manager/x4xx.py b/mpm/python/usrp_mpm/periph_manager/x4xx.py
index b32cbeb08..70a087d14 100644
--- a/mpm/python/usrp_mpm/periph_manager/x4xx.py
+++ b/mpm/python/usrp_mpm/periph_manager/x4xx.py
@@ -876,6 +876,10 @@ class x4xx(ZynqComponents, PeriphManagerBase):
# and throw an exception. We need to put the device back into a safe
# state in that case.
self.set_master_clock_rate(self._master_clock_rate)
+ # Restore the nco frequency to the same values as before the sync source
+ # was changed, to ensure the device transmission/acquisition continues at
+ # the requested frequency.
+ self.rfdc.rfdc_restore_nco_freq()
except RuntimeError as ex:
err = f"Setting clock_source={clock_source},time_source={time_source} " \
f"failed, falling back to {self._safe_sync_source}. Error: " \