From 82ca4abcd930835c1d2cf57158dbede907427e47 Mon Sep 17 00:00:00 2001 From: Bastian Krause Date: Wed, 3 Aug 2022 14:22:30 +0200 Subject: [PATCH] driver/power/siglent: use backend function signatures expected by NetworkPowerDriver When using the siglent power backend with the NetworkPowerDriver, this error occurs: self = NetworkPowerDriver(target=Target(name='Test', env=None), name='power', state=, delay=2.0) @Driver.check_active @step() def off(self): > self.backend.power_set(self._host, self._port, self.port.index, False) E TypeError: power_set() takes 3 positional arguments but 4 were given labgrid/driver/powerdriver.py:219: TypeError The siglent backend does not follow the function signatures expected by the NetworkPowerDriver, because it's missing the port parameter. Fix that by adding the port parameter and making sure that it's None, just like other backends do (apc, rest, sentry, simplerest, tplink). Fixes: da0a81d9 ("driver/power: add support for Siglent SPD3000X series power supplies") Signed-off-by: Bastian Krause --- labgrid/driver/power/siglent.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/labgrid/driver/power/siglent.py b/labgrid/driver/power/siglent.py index 780dff93a..bf92ee16d 100644 --- a/labgrid/driver/power/siglent.py +++ b/labgrid/driver/power/siglent.py @@ -3,7 +3,8 @@ import vxi11 -def power_set(host, index, value): +def power_set(host, port, index, value): + assert port is None index = int(index) assert 1 <= index <= 2 value = "ON" if value else "OFF" @@ -11,7 +12,8 @@ def power_set(host, index, value): psu.write(f"OUTPUT CH{index},{value}") -def power_get(host, index): +def power_get(host, port, index): + assert port is None index = int(index) assert 1 <= index <= 2 psu = vxi11.Instrument(host)