[conflict] Merge "Update Mini-circuits attenuator controller." am: 0f68ced64e am: 10b0edf3fd am: 5489872139
Original change: https://android-review.googlesource.com/c/platform/tools/test/connectivity/+/2025185
Change-Id: Iaef87f5786a1ee47927cca64318223f80fd6e7b0
diff --git a/acts/framework/acts/controllers/attenuator_lib/minicircuits/http.py b/acts/framework/acts/controllers/attenuator_lib/minicircuits/http.py
index 95fa0ba..e1805f0 100644
--- a/acts/framework/acts/controllers/attenuator_lib/minicircuits/http.py
+++ b/acts/framework/acts/controllers/attenuator_lib/minicircuits/http.py
@@ -111,10 +111,11 @@
raise ValueError('Attenuator value out of range!', self.max_atten,
value)
# The actual device uses one-based index for channel numbers.
+ adjusted_value = min(max(0, value), self.max_atten)
att_req = urllib.request.urlopen(
'http://{}:{}/CHAN:{}:SETATT:{}'.format(self._ip_address,
self._port, idx + 1,
- value),
+ adjusted_value),
timeout=self._timeout)
att_resp = att_req.read().decode('utf-8').strip()
if att_resp != '1':
diff --git a/acts/framework/acts/controllers/attenuator_lib/minicircuits/telnet.py b/acts/framework/acts/controllers/attenuator_lib/minicircuits/telnet.py
index 2c85cea..ddda6ab 100644
--- a/acts/framework/acts/controllers/attenuator_lib/minicircuits/telnet.py
+++ b/acts/framework/acts/controllers/attenuator_lib/minicircuits/telnet.py
@@ -37,6 +37,7 @@
the functionality of AttenuatorInstrument is contingent upon a telnet
connection being established.
"""
+
def __init__(self, num_atten=0):
super(AttenuatorInstrument, self).__init__(num_atten)
self._tnhelper = _tnhelper._TNHelper(tx_cmd_separator='\r\n',
@@ -116,7 +117,9 @@
raise ValueError('Attenuator value out of range!', self.max_atten,
value)
# The actual device uses one-based index for channel numbers.
- self._tnhelper.cmd('CHAN:%s:SETATT:%s' % (idx + 1, value), retry=retry)
+ adjusted_value = min(max(0, value), self.max_atten)
+ self._tnhelper.cmd('CHAN:%s:SETATT:%s' % (idx + 1, adjusted_value),
+ retry=retry)
def get_atten(self, idx, retry=False):
"""Returns the current attenuation of the attenuator at the given index.