Source code for labgrid.driver.power.siglent

""" tested with Siglent SPD3303X-E, and should be compatible with all SPD3000X series modules"""

import warnings

import vxi11


[docs] def power_set(host, port, index, value): warnings.warn( "siglent power backend uses vxi11 module using deprecated xdrlib module, see https://github.com/labgrid-project/labgrid/issues/1507", DeprecationWarning, ) assert port is None index = int(index) assert 1 <= index <= 2 value = "ON" if value else "OFF" psu = vxi11.Instrument(host) psu.write(f"OUTPUT CH{index},{value}")
[docs] def power_get(host, port, index): warnings.warn( "siglent power backend uses vxi11 module using deprecated xdrlib module, see https://github.com/labgrid-project/labgrid/issues/1507", DeprecationWarning, ) assert port is None index = int(index) assert 1 <= index <= 2 psu = vxi11.Instrument(host) state = psu.ask("SYSTEM:STATUS?") state = int(state, 16) bitmask = 1 << (index + 3) return bool(state & bitmask)