hvl_ccb.dev.fug.errors

Inheritance diagram of hvl_ccb.dev.fug.errors

Errors and their codes of FuG

exception FuGError(*args, **kwargs)[source]

Bases: DeviceError

Error with the FuG voltage source.

errorcode: str

Errorcode from the Probus, see documentation of Probus V chapter 5. Errors with three-digit errorcodes are thrown by this python module.

class FuGErrorcodes(value=<no_arg>, names=None, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: NameEnum

The power supply can return an errorcode. These errorcodes are handled by this class. The original errorcodes from the source are with one or two digits, see documentation of Probus V chapter 5. All three-digit errorcodes are from this python module.

E0 = ('no error', 'standard response on each command')
E1 = ('no data available', 'Customer tried to read from GPIB but there were no data prepared. (IBIG50 sent command ~T2 to ADDA)')
E10 = ('unknown SCPI command', 'This SCPI command is not implemented')
E100 = ('Command is not implemented', 'You tried to execute a command, which is not implemented or does not exist')
E106 = ('The rampstate is a read-only register', 'You tried to write data to the register, which can only give you the status of the ramping.')
E11 = ('not allowed Trigger-on-Talk', 'Not allowed attempt to Trigger-on-Talk (~T1) while ADDA was in addressable mode.')
E115 = ('The given index to select a digital value is out of range', 'Only integer values between 0 and 1 are allowed.')
E12 = ('invalid argument in ~Tn command', 'Only ~T1 and ~T2 is implemented.')
E125 = ('The given index to select a ramp mode is out of range', 'Only integer values between 0 and 4 are allowed.')
E13 = ('invalid N-value', 'Register > K8 contained an invalid value. Error code is output on an attempt to query data with ? or ~T1')
E135 = ('The given index to select the readback channel is out of range', 'Only integer values between 0 and 6 are allowed.')
E14 = ('register is write only', 'Some registers can only be writte to (i.e.> H0)')
E145 = ('The given value for the AD-conversion is unknown', 'Valid values for the ad-conversion are integer values from "0" to "7".')
E15 = ('string too long', 'i.e.serial number string too long during calibration')
E155 = ('The given value to select a polarity is out range.', 'The value should be 0 or 1.')
E16 = ('wrong checksum', 'checksum over command string was not correct, refer also to 4.4 of the Probus V documentation')
E165 = ('The given index to select the terminator string is out of range', '')
E2 = ('unknown register type', "No valid register type after '>'")
E206 = ('This status register is read-only', 'You tried to write data to this register, which can only give you the actual status of the corresponding digital output.')
E306 = ('The monitor register is read-only', 'You tried to write data to a monitor, which can only give you measured data.')
E4 = ('invalid argument', 'The argument of the command was rejected .i.e. malformed number')
E5 = ('argument out of range', 'i.e. setvalue higher than type value')
E504 = ('Empty string as response', 'The connection is broken.')
E505 = ('The returned register is not the requested.', 'Maybe the connection is overburden.')
E6 = ('register is read only', 'Some registers can only be read but not written to. (i.e. monitor registers)')
E666 = ('You cannot overwrite the most recent error in the interface of the power supply. But, well: You created an error anyway...', '')
E7 = ('Receive Overflow', 'Command string was longer than 50 characters.')
E8 = ('EEPROM is write protected', 'Write attempt to calibration data while the write protection switch was set to write protected.')
E9 = ('address error', 'A non addressed command was sent to ADDA while it was in addressable mode (and vice versa).')
raise_() None[source]

Evaluate the error code and raise a FuGError if the error code is not E0