diff --git a/frappy_psi/leidenghs.py b/frappy_psi/leidenghs.py index 822251d9..e917ffe2 100644 --- a/frappy_psi/leidenghs.py +++ b/frappy_psi/leidenghs.py @@ -27,6 +27,7 @@ from frappy.errors import CommunicationFailedError P_SCALE = 2**14 / 1e4 + class IO(StringIO): end_of_line = '\n' identification = [('ID?', '0\\tGHS-2T-1T-700-CF.*')] @@ -80,7 +81,7 @@ class Base(HasIO): return self.io._key_status[key - 1] == '2' def get_pressure(self, addr): - return float(self.io._pressure[addr]) / P_SCALE + return float(self.io._pressure[addr]) def update_values(self): self.read_value() @@ -173,9 +174,10 @@ class Pressure(Base, Readable): value = Parameter('pressure and flow values', datatype=FloatRange(unit='mbar')) addr = Property('address of pressure sensor', datatype=EnumType(PRESSURE_MAP)) + scale = Parameter('scale factor from raw value', datatype=FloatRange(), default=P_SCALE) def read_value(self): - value = self.get_pressure(self.addr.value) + value = self.get_pressure(self.addr.value) / self.scale return value