Source code for msl.equipment.resources.picotech.errors

"""
Exceptions and error codes defined in the Pico Technology SDK.
"""
from __future__ import annotations

from ctypes import c_uint32
from enum import IntEnum

PICO_MAC_ADDRESS                                 = 0x0000000B

PICO_INFO                                        = c_uint32

PICO_OK                                          = 0x00000000
PICO_MAX_UNITS_OPENED                            = 0x00000001
PICO_MEMORY_FAIL                                 = 0x00000002
PICO_NOT_FOUND                                   = 0x00000003
PICO_FW_FAIL                                     = 0x00000004
PICO_OPEN_OPERATION_IN_PROGRESS                  = 0x00000005
PICO_OPERATION_FAILED                            = 0x00000006
PICO_NOT_RESPONDING                              = 0x00000007
PICO_CONFIG_FAIL                                 = 0x00000008
PICO_KERNEL_DRIVER_TOO_OLD                       = 0x00000009
PICO_EEPROM_CORRUPT                              = 0x0000000A
PICO_OS_NOT_SUPPORTED                            = 0x0000000B
PICO_INVALID_HANDLE                              = 0x0000000C
PICO_INVALID_PARAMETER                           = 0x0000000D
PICO_INVALID_TIMEBASE                            = 0x0000000E
PICO_INVALID_VOLTAGE_RANGE                       = 0x0000000F
PICO_INVALID_CHANNEL                             = 0x00000010
PICO_INVALID_TRIGGER_CHANNEL                     = 0x00000011
PICO_INVALID_CONDITION_CHANNEL                   = 0x00000012
PICO_NO_SIGNAL_GENERATOR                         = 0x00000013
PICO_STREAMING_FAILED                            = 0x00000014
PICO_BLOCK_MODE_FAILED                           = 0x00000015
PICO_NULL_PARAMETER                              = 0x00000016
PICO_ETS_MODE_SET                                = 0x00000017
PICO_DATA_NOT_AVAILABLE                          = 0x00000018
PICO_STRING_BUFFER_TOO_SMALL                     = 0x00000019
PICO_ETS_NOT_SUPPORTED                           = 0x0000001A
PICO_AUTO_TRIGGER_TIME_TOO_SHORT                 = 0x0000001B
PICO_BUFFER_STALL                                = 0x0000001C
PICO_TOO_MANY_SAMPLES                            = 0x0000001D
PICO_TOO_MANY_SEGMENTS                           = 0x0000001E
PICO_PULSE_WIDTH_QUALIFIER                       = 0x0000001F
PICO_DELAY                                       = 0x00000020
PICO_SOURCE_DETAILS                              = 0x00000021
PICO_CONDITIONS                                  = 0x00000022
PICO_USER_CALLBACK                               = 0x00000023
PICO_DEVICE_SAMPLING                             = 0x00000024
PICO_NO_SAMPLES_AVAILABLE                        = 0x00000025
PICO_SEGMENT_OUT_OF_RANGE                        = 0x00000026
PICO_BUSY                                        = 0x00000027
PICO_STARTINDEX_INVALID                          = 0x00000028
PICO_INVALID_INFO                                = 0x00000029
PICO_INFO_UNAVAILABLE                            = 0x0000002A
PICO_INVALID_SAMPLE_INTERVAL                     = 0x0000002B
PICO_TRIGGER_ERROR                               = 0x0000002C
PICO_MEMORY                                      = 0x0000002D
PICO_SIG_GEN_PARAM                               = 0x0000002E
PICO_SHOTS_SWEEPS_WARNING                        = 0x0000002F
PICO_SIGGEN_TRIGGER_SOURCE                       = 0x00000030
PICO_AUX_OUTPUT_CONFLICT                         = 0x00000031
PICO_AUX_OUTPUT_ETS_CONFLICT                     = 0x00000032
PICO_WARNING_EXT_THRESHOLD_CONFLICT              = 0x00000033
PICO_WARNING_AUX_OUTPUT_CONFLICT                 = 0x00000034
PICO_SIGGEN_OUTPUT_OVER_VOLTAGE                  = 0x00000035
PICO_DELAY_NULL                                  = 0x00000036
PICO_INVALID_BUFFER                              = 0x00000037
PICO_SIGGEN_OFFSET_VOLTAGE                       = 0x00000038
PICO_SIGGEN_PK_TO_PK                             = 0x00000039
PICO_CANCELLED                                   = 0x0000003A
PICO_SEGMENT_NOT_USED                            = 0x0000003B
PICO_INVALID_CALL                                = 0x0000003C
PICO_GET_VALUES_INTERRUPTED                      = 0x0000003D
PICO_NOT_USED                                    = 0x0000003F
PICO_INVALID_SAMPLERATIO                         = 0x00000040
PICO_INVALID_STATE                               = 0x00000041
PICO_NOT_ENOUGH_SEGMENTS                         = 0x00000042
PICO_DRIVER_FUNCTION                             = 0x00000043
PICO_RESERVED                                    = 0x00000044
PICO_INVALID_COUPLING                            = 0x00000045
PICO_BUFFERS_NOT_SET                             = 0x00000046
PICO_RATIO_MODE_NOT_SUPPORTED                    = 0x00000047
PICO_RAPID_NOT_SUPPORT_AGGREGATION               = 0x00000048
PICO_INVALID_TRIGGER_PROPERTY                    = 0x00000049
PICO_INTERFACE_NOT_CONNECTED                     = 0x0000004A
PICO_RESISTANCE_AND_PROBE_NOT_ALLOWED            = 0x0000004B
PICO_POWER_FAILED                                = 0x0000004C
PICO_SIGGEN_WAVEFORM_SETUP_FAILED                = 0x0000004D
PICO_FPGA_FAIL                                   = 0x0000004E
PICO_POWER_MANAGER                               = 0x0000004F
PICO_INVALID_ANALOGUE_OFFSET                     = 0x00000050
PICO_PLL_LOCK_FAILED                             = 0x00000051
PICO_ANALOG_BOARD                                = 0x00000052
PICO_CONFIG_FAIL_AWG                             = 0x00000053
PICO_INITIALISE_FPGA                             = 0x00000054
PICO_EXTERNAL_FREQUENCY_INVALID                  = 0x00000056
PICO_CLOCK_CHANGE_ERROR                          = 0x00000057
PICO_TRIGGER_AND_EXTERNAL_CLOCK_CLASH            = 0x00000058
PICO_PWQ_AND_EXTERNAL_CLOCK_CLASH                = 0x00000059
PICO_UNABLE_TO_OPEN_SCALING_FILE                 = 0x0000005A
PICO_MEMORY_CLOCK_FREQUENCY                      = 0x0000005B
PICO_I2C_NOT_RESPONDING                          = 0x0000005C
PICO_NO_CAPTURES_AVAILABLE                       = 0x0000005D
PICO_NOT_USED_IN_THIS_CAPTURE_MODE               = 0x0000005E
PICO_GET_DATA_ACTIVE                             = 0x00000103
PICO_IP_NETWORKED                                = 0x00000104
PICO_INVALID_IP_ADDRESS                          = 0x00000105
PICO_IPSOCKET_FAILED                             = 0x00000106
PICO_IPSOCKET_TIMEDOUT                           = 0x00000107
PICO_SETTINGS_FAILED                             = 0x00000108
PICO_NETWORK_FAILED                              = 0x00000109
PICO_WS2_32_DLL_NOT_LOADED                       = 0x0000010A
PICO_INVALID_IP_PORT                             = 0x0000010B
PICO_COUPLING_NOT_SUPPORTED                      = 0x0000010C
PICO_BANDWIDTH_NOT_SUPPORTED                     = 0x0000010D
PICO_INVALID_BANDWIDTH                           = 0x0000010E
PICO_AWG_NOT_SUPPORTED                           = 0x0000010F
PICO_ETS_NOT_RUNNING                             = 0x00000110
PICO_SIG_GEN_WHITENOISE_NOT_SUPPORTED            = 0x00000111
PICO_SIG_GEN_WAVETYPE_NOT_SUPPORTED              = 0x00000112
PICO_INVALID_DIGITAL_PORT                        = 0x00000113
PICO_INVALID_DIGITAL_CHANNEL                     = 0x00000114
PICO_INVALID_DIGITAL_TRIGGER_DIRECTION           = 0x00000115
PICO_SIG_GEN_PRBS_NOT_SUPPORTED                  = 0x00000116
PICO_ETS_NOT_AVAILABLE_WITH_LOGIC_CHANNELS       = 0x00000117
PICO_WARNING_REPEAT_VALUE                        = 0x00000118
PICO_POWER_SUPPLY_CONNECTED                      = 0x00000119
PICO_POWER_SUPPLY_NOT_CONNECTED                  = 0x0000011A
PICO_POWER_SUPPLY_REQUEST_INVALID                = 0x0000011B
PICO_POWER_SUPPLY_UNDERVOLTAGE                   = 0x0000011C
PICO_CAPTURING_DATA                              = 0x0000011D
PICO_USB3_0_DEVICE_NON_USB3_0_PORT               = 0x0000011E
PICO_NOT_SUPPORTED_BY_THIS_DEVICE                = 0x0000011F
PICO_INVALID_DEVICE_RESOLUTION                   = 0x00000120
PICO_INVALID_NUMBER_CHANNELS_FOR_RESOLUTION      = 0x00000121
PICO_CHANNEL_DISABLED_DUE_TO_USB_POWERED         = 0x00000122
PICO_SIGGEN_DC_VOLTAGE_NOT_CONFIGURABLE          = 0x00000123
PICO_NO_TRIGGER_ENABLED_FOR_TRIGGER_IN_PRE_TRIG  = 0x00000124
PICO_TRIGGER_WITHIN_PRE_TRIG_NOT_ARMED           = 0x00000125
PICO_TRIGGER_WITHIN_PRE_NOT_ALLOWED_WITH_DELAY   = 0x00000126
PICO_TRIGGER_INDEX_UNAVAILABLE                   = 0x00000127
PICO_AWG_CLOCK_FREQUENCY                         = 0x00000128
PICO_TOO_MANY_CHANNELS_IN_USE                    = 0x00000129
PICO_NULL_CONDITIONS                             = 0x0000012A
PICO_DUPLICATE_CONDITION_SOURCE                  = 0x0000012B
PICO_INVALID_CONDITION_INFO                      = 0x0000012C
PICO_SETTINGS_READ_FAILED                        = 0x0000012D
PICO_SETTINGS_WRITE_FAILED                       = 0x0000012E
PICO_ARGUMENT_OUT_OF_RANGE                       = 0x0000012F
PICO_HARDWARE_VERSION_NOT_SUPPORTED              = 0x00000130
PICO_DIGITAL_HARDWARE_VERSION_NOT_SUPPORTED      = 0x00000131
PICO_ANALOGUE_HARDWARE_VERSION_NOT_SUPPORTED     = 0x00000132
PICO_UNABLE_TO_CONVERT_TO_RESISTANCE             = 0x00000133
PICO_DUPLICATED_CHANNEL                          = 0x00000134
PICO_INVALID_RESISTANCE_CONVERSION               = 0x00000135
PICO_INVALID_VALUE_IN_MAX_BUFFER                 = 0x00000136
PICO_INVALID_VALUE_IN_MIN_BUFFER                 = 0x00000137
PICO_SIGGEN_FREQUENCY_OUT_OF_RANGE               = 0x00000138
PICO_EEPROM2_CORRUPT                             = 0x00000139
PICO_EEPROM2_FAIL                                = 0x0000013A
PICO_SERIAL_BUFFER_TOO_SMALL                     = 0x0000013B
PICO_SIGGEN_TRIGGER_AND_EXTERNAL_CLOCK_CLASH     = 0x0000013C
PICO_WARNING_SIGGEN_AUXIO_TRIGGER_DISABLED       = 0x0000013D
PICO_SIGGEN_GATING_AUXIO_NOT_AVAILABLE           = 0x00000013E
PICO_SIGGEN_GATING_AUXIO_ENABLED                 = 0x00000013F
PICO_RESOURCE_ERROR                              = 0x00000140
PICO_TEMPERATURE_TYPE_INVALID                    = 0x000000141
PICO_TEMPERATURE_TYPE_NOT_SUPPORTED              = 0x000000142
PICO_TIMEOUT                                     = 0x00000143
PICO_DEVICE_NOT_FUNCTIONING                      = 0x00000144
PICO_INTERNAL_ERROR                              = 0x00000145
PICO_MULTIPLE_DEVICES_FOUND                      = 0x00000146
PICO_WARNING_NUMBER_OF_SEGMENTS_REDUCED          = 0x00000147
PICO_CAL_PINS_STATES                             = 0x00000148
PICO_CAL_PINS_FREQUENCY                          = 0x00000149
PICO_CAL_PINS_AMPLITUDE                          = 0x0000014A
PICO_CAL_PINS_WAVETYPE                           = 0x0000014B
PICO_CAL_PINS_OFFSET                             = 0x0000014C
PICO_PROBE_FAULT                                 = 0x0000014D
PICO_PROBE_IDENTITY_UNKNOWN                      = 0x0000014E
PICO_PROBE_POWER_DC_POWER_SUPPLY_REQUIRED        = 0x0000014F
PICO_PROBE_NOT_POWERED_WITH_DC_POWER_SUPPLY      = 0x00000150
PICO_PROBE_CONFIG_FAILURE                        = 0x00000151
PICO_PROBE_INTERACTION_CALLBACK                  = 0x00000152
PICO_UNKNOWN_INTELLIGENT_PROBE                   = 0x00000153
PICO_INTELLIGENT_PROBE_CORRUPT                   = 0x00000154
PICO_PROBE_COLLECTION_NOT_STARTED                = 0x00000155
PICO_PROBE_POWER_CONSUMPTION_EXCEEDED            = 0x00000156
PICO_WARNING_PROBE_CHANNEL_OUT_OF_SYNC           = 0x00000157
PICO_DEVICE_TIME_STAMP_RESET                     = 0x01000000
PICO_WATCHDOGTIMER                               = 0x10000000
PICO_IPP_NOT_FOUND                               = 0x10000001
PICO_IPP_NO_FUNCTION                             = 0x10000002
PICO_IPP_ERROR                                   = 0x10000003
PICO_SHADOW_CAL_NOT_AVAILABLE                    = 0x10000004
PICO_SHADOW_CAL_DISABLED                         = 0x10000005
PICO_SHADOW_CAL_ERROR                            = 0x10000006
PICO_SHADOW_CAL_CORRUPT                          = 0x10000007
PICO_DEVICE_MEMORY_OVERFLOW                      = 0x10000008
PICO_RESERVED_1                                  = 0x11000000

PICO_STATUS                                      = c_uint32


[docs] class PS2000Error(IntEnum): OK = 0 MAX_UNITS_OPENED = 1 MEM_FAIL = 2 NOT_FOUND = 3 FW_FAIL = 4 NOT_RESPONDING = 5 CONFIG_FAIL = 6 OS_NOT_SUPPORTED = 7 PICOPP_TOO_OLD = 8
[docs] class PS3000Error(IntEnum): OK = 0 MAX_UNITS_OPENED = 1 MEM_FAIL = 2 NOT_FOUND = 3 FW_FAIL = 4 NOT_RESPONDING = 5 CONFIG_FAIL = 6 OS_NOT_SUPPORTED = 7 PICOPP_TOO_OLD = 8
# For ps2000 and ps3000 # PS2000Error == PS3000Error so it does not matter which enum we use ERROR_CODES = { PS2000Error.OK: ( 'PICO_OK', 'PicoTech<model={model}, serial={serial}> is functioning correctly.' ), PS2000Error.MAX_UNITS_OPENED: ( 'PICO_MAX_UNITS_OPENED', 'Attempts have been made to open more than {sdk_filename_upper}_MAX_UNITS oscilloscopes.' ), PS2000Error.MEM_FAIL: ( 'PICO_MEM_FAIL', 'Not enough memory could be allocated on the host machine.' ), PS2000Error.NOT_FOUND: ( 'PICO_NOT_FOUND', 'The PicoTech<model={model}, serial={serial}> could not be found.' ), PS2000Error.FW_FAIL: ( 'PICO_FW_FAIL', 'Unable to download firmware.' ), PS2000Error.NOT_RESPONDING: ( 'PICO_NOT_RESPONDING', 'The PicoTech<model={model}, serial={serial}> is not responding to commands from the PC.' ), PS2000Error.CONFIG_FAIL: ( 'PICO_CONFIG_FAIL', 'The configuration information in the PicoTech<model={model}, serial={serial}> ' 'has become corrupt or is missing.' ), PS2000Error.OS_NOT_SUPPORTED: ( 'PICO_OS_NOT_SUPPORTED', 'The operating system is not supported by this driver.' ), PS2000Error.PICOPP_TOO_OLD: ( 'PICOPP_TOO_OLD', 'The picopp.sys file is too old to be used with the device driver.' ), } # for ps####(a)Api ERROR_CODES_API = { PICO_OK: ( 'PICO_OK', 'PicoTech<model={model}, serial={serial}> is functioning correctly.' ), PICO_MAX_UNITS_OPENED: ( 'PICO_MAX_UNITS_OPENED', 'An attempt has been made to open more than {sdk_filename_upper}_MAX_UNITS oscilloscopes.' ), PICO_MEMORY_FAIL: ( 'PICO_MEMORY_FAIL', 'Not enough memory could be allocated on the host machine.' ), PICO_NOT_FOUND: ( 'PICO_NOT_FOUND', 'The PicoTech<model={model}, serial={serial}> could not be found.' ), PICO_FW_FAIL: ( 'PICO_FW_FAIL', 'Unable to download firmware.' ), PICO_OPEN_OPERATION_IN_PROGRESS: ( 'PICO_OPEN_OPERATION_IN_PROGRESS', 'The "open_unit" operation is already in progress for PicoTech<model={model}, serial={serial}>.' ), PICO_OPERATION_FAILED: ( 'PICO_OPERATION_FAILED', 'The PicoTech<model={model}, serial={serial}> operation failed.' ), PICO_NOT_RESPONDING: ( 'PICO_NOT_RESPONDING', 'The PicoTech<model={model}, serial={serial}> is not responding to commands from the PC.' ), PICO_CONFIG_FAIL: ( 'PICO_CONFIG_FAIL', 'The configuration information in the PicoTech<model={model}, serial={serial}> has ' 'become corrupt or is missing.' ), PICO_KERNEL_DRIVER_TOO_OLD: ( 'PICO_KERNEL_DRIVER_TOO_OLD', 'The picopp.sys file is too old to be used with the device driver.' ), PICO_EEPROM_CORRUPT: ( 'PICO_EEPROM_CORRUPT', 'The EEPROM has become corrupt for PicoTech<model={model}, serial={serial}>, so ' 'the device will use a default setting.' ), PICO_OS_NOT_SUPPORTED: ( 'PICO_OS_NOT_SUPPORTED', 'The operating system on the PC is not supported by this driver.' ), PICO_INVALID_HANDLE: ( 'PICO_INVALID_HANDLE', 'There is no device with the handle value passed.' ), PICO_INVALID_PARAMETER: ( 'PICO_INVALID_PARAMETER', 'A parameter value is not valid.' ), PICO_INVALID_TIMEBASE: ( 'PICO_INVALID_TIMEBASE', 'The timebase for PicoTech<model={model}, serial={serial}> is not supported or is invalid.' ), PICO_INVALID_VOLTAGE_RANGE: ( 'PICO_INVALID_VOLTAGE_RANGE', 'The voltage range for PicoTech<model={model}, serial={serial}> is not supported or is invalid.' ), PICO_INVALID_CHANNEL: ( 'PICO_INVALID_CHANNEL', 'The channel number is not valid on PicoTech<model={model}, serial={serial}> or no channels have been set.' ), PICO_INVALID_TRIGGER_CHANNEL: ( 'PICO_INVALID_TRIGGER_CHANNEL', 'The channel set for a trigger is not available on PicoTech<model={model}, serial={serial}>.' ), PICO_INVALID_CONDITION_CHANNEL: ( 'PICO_INVALID_CONDITION_CHANNEL', 'The channel set for a condition is not available on PicoTech<model={model}, serial={serial}>.' ), PICO_NO_SIGNAL_GENERATOR: ( 'PICO_NO_SIGNAL_GENERATOR', 'PicoTech<model={model}, serial={serial}> does not have a signal generator.' ), PICO_STREAMING_FAILED: ( 'PICO_STREAMING_FAILED', 'Streaming has failed to start or has stopped without user request.' ), PICO_BLOCK_MODE_FAILED: ( 'PICO_BLOCK_MODE_FAILED', 'Block failed to start, a parameter may have been set wrongly.' ), PICO_NULL_PARAMETER: ( 'PICO_NULL_PARAMETER', 'A parameter that was required is NULL.' ), PICO_ETS_MODE_SET: ( 'PICO_ETS_MODE_SET', 'Function call failed because ETS mode is being used.' ), PICO_DATA_NOT_AVAILABLE: ( 'PICO_DATA_NOT_AVAILABLE', 'No data is available from a run_block() call.' ), PICO_STRING_BUFFER_TOO_SMALL: ( 'PICO_STRING_BUFFER_TOO_SMALL', 'The buffer passed for the information was too small.' ), PICO_ETS_NOT_SUPPORTED: ( 'PICO_ETS_NOT_SUPPORTED', 'ETS is not supported on this device.' ), PICO_AUTO_TRIGGER_TIME_TOO_SHORT: ( 'PICO_AUTO_TRIGGER_TIME_TOO_SHORT', 'The auto trigger time is less than the time it will take to collect the pre-trigger data.' ), PICO_BUFFER_STALL: ( 'PICO_BUFFER_STALL', 'The collection of data has stalled as unread data would be overwritten.' ), PICO_TOO_MANY_SAMPLES: ( 'PICO_TOO_MANY_SAMPLES', 'Number of samples requested is more than available in the current memory segment.' ), PICO_TOO_MANY_SEGMENTS: ( 'PICO_TOO_MANY_SEGMENTS', 'Not possible to create number of segments requested.' ), PICO_PULSE_WIDTH_QUALIFIER: ( 'PICO_PULSE_WIDTH_QUALIFIER', 'A null pointer has been passed in the trigger function or one of the parameters is out of range.' ), PICO_DELAY: ( 'PICO_DELAY', 'One or more of the hold-off parameters are out of range.' ), PICO_SOURCE_DETAILS: ( 'PICO_SOURCE_DETAILS', 'One or more of the source details are incorrect.' ), PICO_CONDITIONS: ( 'PICO_CONDITIONS', 'One or more of the conditions are incorrect.' ), PICO_USER_CALLBACK: ( 'PICO_USER_CALLBACK', 'The driver\'s thread is currently in the {sdk_filename}BlockReady callback function and therefore the ' 'action cannot be carried out.' ), PICO_DEVICE_SAMPLING: ( 'PICO_DEVICE_SAMPLING', 'An attempt is being made to get stored data while streaming. Either stop streaming by calling ' 'stop(), or use get_streaming_latest_values().' ), PICO_NO_SAMPLES_AVAILABLE: ( 'PICO_NO_SAMPLES_AVAILABLE', '...because a run has not been completed.' ), PICO_SEGMENT_OUT_OF_RANGE: ( 'PICO_SEGMENT_OUT_OF_RANGE', 'The memory index is out of range.' ), PICO_BUSY: ( 'PICO_BUSY', 'Data cannot be returned yet.' ), PICO_STARTINDEX_INVALID: ( 'PICO_STARTINDEX_INVALID', 'The start time to get stored data is out of range.' ), PICO_INVALID_INFO: ( 'PICO_INVALID_INFO', 'The information number requested is not a valid number.' ), PICO_INFO_UNAVAILABLE: ( 'PICO_INFO_UNAVAILABLE', 'The handle is invalid so no information is available about the device. ' 'Only PICO_DRIVER_VERSION is available.' ), PICO_INVALID_SAMPLE_INTERVAL: ( 'PICO_INVALID_SAMPLE_INTERVAL', 'The sample interval selected for streaming is out of range.' ), PICO_TRIGGER_ERROR: ( 'PICO_TRIGGER_ERROR', 'ETS is set but no trigger has been set. A trigger setting is required for ETS.' ), PICO_MEMORY: ( 'PICO_MEMORY', 'Driver cannot allocate memory.' ), PICO_SIG_GEN_PARAM: ( 'PICO_SIG_GEN_PARAM', 'Incorrect parameter passed to signal generator.' ), PICO_SHOTS_SWEEPS_WARNING: ( 'PICO_SHOTS_SWEEPS_WARNING', 'The signal generator will output the signal required but sweeps and shots will be ignored. ' 'Only one parameter can be non-zero.' ), PICO_SIGGEN_TRIGGER_SOURCE: ( 'PICO_SIGGEN_TRIGGER_SOURCE', 'A software trigger has been sent but the trigger source is not a software trigger.' ), PICO_AUX_OUTPUT_CONFLICT: ( 'PICO_AUX_OUTPUT_CONFLICT', '{sdk_filename}SetTrigger has found a conflict between the trigger source and the AUXIO output enable.' ), PICO_AUX_OUTPUT_ETS_CONFLICT: ( 'PICO_AUX_OUTPUT_ETS_CONFLICT', 'ETS mode is being used and AUXIO is set as an input.' ), PICO_WARNING_EXT_THRESHOLD_CONFLICT: ( 'PICO_WARNING_EXT_THRESHOLD_CONFLICT', 'The EXT threshold is being set in both {sdk_filename}SetTrigger function and in the signal ' 'generator but the threshold values differ. The last value set will be used.' ), PICO_WARNING_AUX_OUTPUT_CONFLICT: ( 'PICO_WARNING_AUX_OUTPUT_CONFLICT', 'AUX cannot be used as input and output at the same time.' ), PICO_SIGGEN_OUTPUT_OVER_VOLTAGE: ( 'PICO_SIGGEN_OUTPUT_OVER_VOLTAGE', 'The combined peak to peak voltage and the analog offset voltage exceed the ' 'allowable voltage the signal generator can produce.' ), PICO_DELAY_NULL: ( 'PICO_DELAY_NULL', 'NULL pointer passed as delay parameter.' ), PICO_INVALID_BUFFER: ( 'PICO_INVALID_BUFFER', 'The buffers for overview data have not been set while streaming.' ), PICO_SIGGEN_OFFSET_VOLTAGE: ( 'PICO_SIGGEN_OFFSET_VOLTAGE', 'The analog offset voltage is out of range.' ), PICO_SIGGEN_PK_TO_PK: ( 'PICO_SIGGEN_PK_TO_PK', 'The analog peak to peak voltage is out of range.' ), PICO_CANCELLED: ( 'PICO_CANCELLED', 'A block collection has been cancelled.' ), PICO_SEGMENT_NOT_USED: ( 'PICO_SEGMENT_NOT_USED', 'The segment index is not currently being used.' ), PICO_INVALID_CALL: ( 'PICO_INVALID_CALL', 'The wrong GetValues function has been called for the collection mode in use.' ), PICO_GET_VALUES_INTERRUPTED: ( 'PICO_GET_VALUES_INTERRUPTED', 'The GetValues function has interrupted.' ), PICO_NOT_USED: ( 'PICO_NOT_USED', 'The function is not available.' ), PICO_INVALID_SAMPLERATIO: ( 'PICO_INVALID_SAMPLERATIO', 'The aggregation ratio requested is out of range.' ), PICO_INVALID_STATE: ( 'PICO_INVALID_STATE', 'PicoTech<model={model}, serial={serial}> is in an invalid state.' ), PICO_NOT_ENOUGH_SEGMENTS: ( 'PICO_NOT_ENOUGH_SEGMENTS', 'The number of segments allocated is fewer than the number of captures requested.' ), PICO_DRIVER_FUNCTION: ( 'PICO_DRIVER_FUNCTION', 'You called a driver function while another driver function was still being processed.' ), PICO_RESERVED: ( 'PICO_RESERVED', 'Reserved.' ), PICO_INVALID_COUPLING: ( 'PICO_INVALID_COUPLING', 'An invalid coupling type was specified in {sdk_filename}SetChannel.' ), PICO_BUFFERS_NOT_SET: ( 'PICO_BUFFERS_NOT_SET', 'An attempt was made to get data before a data buffer was defined.' ), PICO_RATIO_MODE_NOT_SUPPORTED: ( 'PICO_RATIO_MODE_NOT_SUPPORTED', 'The selected down-sampling mode (used for data reduction) is not allowed.' ), PICO_RAPID_NOT_SUPPORT_AGGREGATION: ( 'PICO_RAPID_NOT_SUPPORT_AGGREGATION', 'RapidBlock mode does not support aggregation.' ), PICO_INVALID_TRIGGER_PROPERTY: ( 'PICO_INVALID_TRIGGER_PROPERTY', 'An invalid parameter was passed to {sdk_filename}SetTriggerChannelProperties.' ), PICO_INTERFACE_NOT_CONNECTED: ( 'PICO_INTERFACE_NOT_CONNECTED', 'The driver was unable to contact the oscilloscope.' ), PICO_RESISTANCE_AND_PROBE_NOT_ALLOWED: ( 'PICO_RESISTANCE_AND_PROBE_NOT_ALLOWED', 'The resistance and probe are not allowed.' ), PICO_POWER_FAILED: ( 'PICO_POWER_FAILED', 'Power failure.' ), PICO_SIGGEN_WAVEFORM_SETUP_FAILED: ( 'PICO_SIGGEN_WAVEFORM_SETUP_FAILED', 'A problem occurred in {sdk_filename}SetSigGenBuiltIn or {sdk_filename}SetSigGenArbitrary.' ), PICO_FPGA_FAIL: ( 'PICO_FPGA_FAIL', '' ), PICO_POWER_MANAGER: ( 'PICO_POWER_MANAGER', '' ), PICO_INVALID_ANALOGUE_OFFSET: ( 'PICO_INVALID_ANALOGUE_OFFSET', 'An impossible analogue offset value was specified in {sdk_filename}SetChannel.' ), PICO_PLL_LOCK_FAILED: ( 'PICO_PLL_LOCK_FAILED', 'Unable to configure the PicoTech<model={model}, serial={serial}>.' ), PICO_ANALOG_BOARD: ( 'PICO_ANALOG_BOARD', 'The oscilloscope\'s analog board is not detected, or is not connected to the digital board.' ), PICO_CONFIG_FAIL_AWG: ( 'PICO_CONFIG_FAIL_AWG', 'Unable to configure the signal generator.' ), PICO_INITIALISE_FPGA: ( 'PICO_INITIALISE_FPGA', 'The FPGA cannot be initialized, so unit cannot be opened.' ), PICO_EXTERNAL_FREQUENCY_INVALID: ( 'PICO_EXTERNAL_FREQUENCY_INVALID', 'The frequency for the external clock is not within 5% of the stated value.' ), PICO_CLOCK_CHANGE_ERROR: ( 'PICO_CLOCK_CHANGE_ERROR', 'The FPGA could not lock the clock signal.' ), PICO_TRIGGER_AND_EXTERNAL_CLOCK_CLASH: ( 'PICO_TRIGGER_AND_EXTERNAL_CLOCK_CLASH', 'You are trying to configure the AUX input as both a trigger and a reference clock.' ), PICO_PWQ_AND_EXTERNAL_CLOCK_CLASH: ( 'PICO_PWQ_AND_EXTERNAL_CLOCK_CLASH', 'You are trying to configure the AUX input as both a pulse width qualifier and a reference clock.' ), PICO_UNABLE_TO_OPEN_SCALING_FILE: ( 'PICO_UNABLE_TO_OPEN_SCALING_FILE', 'The scaling file set can not be opened.' ), PICO_MEMORY_CLOCK_FREQUENCY: ( 'PICO_MEMORY_CLOCK_FREQUENCY', 'The frequency of the memory is reporting incorrectly.' ), PICO_I2C_NOT_RESPONDING: ( 'PICO_I2C_NOT_RESPONDING', 'The I2C that is being actioned is not responding to requests.' ), PICO_NO_CAPTURES_AVAILABLE: ( 'PICO_NO_CAPTURES_AVAILABLE', 'There are no captures available and therefore no data can be returned.' ), PICO_NOT_USED_IN_THIS_CAPTURE_MODE: ( 'PICO_NOT_USED_IN_THIS_CAPTURE_MODE', 'The capture mode the device is currently running in does not support the current request.' ), PICO_GET_DATA_ACTIVE: ( 'PICO_GET_DATA_ACTIVE', 'Reserved' ), PICO_IP_NETWORKED: ( 'PICO_IP_NETWORKED', 'PicoTech<model={model}, serial={serial}> is currently connected via the IP ' 'Network socket and thus the call made is not supported.' ), PICO_INVALID_IP_ADDRESS: ( 'PICO_INVALID_IP_ADDRESS', 'An IP address that is not correct has been passed to the driver.' ), PICO_IPSOCKET_FAILED: ( 'PICO_IPSOCKET_FAILED', 'The IP socket has failed.' ), PICO_IPSOCKET_TIMEDOUT: ( 'PICO_IPSOCKET_TIMEDOUT', 'The IP socket has timed out.' ), PICO_SETTINGS_FAILED: ( 'PICO_SETTINGS_FAILED', 'The settings requested have failed to be set.' ), PICO_NETWORK_FAILED: ( 'PICO_NETWORK_FAILED', 'The network connection has failed.' ), PICO_WS2_32_DLL_NOT_LOADED: ( 'PICO_WS2_32_DLL_NOT_LOADED', 'Unable to load the WS2 dll.' ), PICO_INVALID_IP_PORT: ( 'PICO_INVALID_IP_PORT', 'The IP port is invalid.' ), PICO_COUPLING_NOT_SUPPORTED: ( 'PICO_COUPLING_NOT_SUPPORTED', 'The type of coupling requested is not supported on the opened device.' ), PICO_BANDWIDTH_NOT_SUPPORTED: ( 'PICO_BANDWIDTH_NOT_SUPPORTED', 'Bandwidth limit is not supported on PicoTech<model={model}, serial={serial}>.' ), PICO_INVALID_BANDWIDTH: ( 'PICO_INVALID_BANDWIDTH', 'The value requested for the bandwidth limit is out of range.' ), PICO_AWG_NOT_SUPPORTED: ( 'PICO_AWG_NOT_SUPPORTED', 'PicoTech<model={model}, serial={serial}> does not have an arbitrary waveform generator.' ), PICO_ETS_NOT_RUNNING: ( 'PICO_ETS_NOT_RUNNING', 'Data has been requested with ETS mode set but run_block() has not been called, or stop() has been called.' ), PICO_SIG_GEN_WHITENOISE_NOT_SUPPORTED: ( 'PICO_SIG_GEN_WHITENOISE_NOT_SUPPORTED', 'White noise is not supported on PicoTech<model={model}, serial={serial}>.' ), PICO_SIG_GEN_WAVETYPE_NOT_SUPPORTED: ( 'PICO_SIG_GEN_WAVETYPE_NOT_SUPPORTED', 'The wave type requested is not supported by PicoTech<model={model}, serial={serial}>.' ), PICO_INVALID_DIGITAL_PORT: ( 'PICO_INVALID_DIGITAL_PORT', 'The digital port number is invalid.' ), PICO_INVALID_DIGITAL_CHANNEL: ( 'PICO_INVALID_DIGITAL_CHANNEL', 'The digital channel is invalid.' ), PICO_INVALID_DIGITAL_TRIGGER_DIRECTION: ( 'PICO_INVALID_DIGITAL_TRIGGER_DIRECTION', 'The digital trigger direction is not a valid trigger direction.' ), PICO_SIG_GEN_PRBS_NOT_SUPPORTED: ( 'PICO_SIG_GEN_PRBS_NOT_SUPPORTED', 'Siggen does not generate pseudo random bit stream.' ), PICO_ETS_NOT_AVAILABLE_WITH_LOGIC_CHANNELS: ( 'PICO_ETS_NOT_AVAILABLE_WITH_LOGIC_CHANNELS', 'When a digital port is enabled, ETS sample mode is not available for use.' ), PICO_WARNING_REPEAT_VALUE: ( 'PICO_WARNING_REPEAT_VALUE', 'Not applicable to PicoTech<model={model}, serial={serial}>.' ), PICO_POWER_SUPPLY_CONNECTED: ( 'PICO_POWER_SUPPLY_CONNECTED', 'The DC power supply is connected for PicoTech<model={model}, serial={serial}>.' ), PICO_POWER_SUPPLY_NOT_CONNECTED: ( 'PICO_POWER_SUPPLY_NOT_CONNECTED', "The DC power supply isn't connected for PicoTech<model={model}, serial={serial}>." ), PICO_POWER_SUPPLY_REQUEST_INVALID: ( 'PICO_POWER_SUPPLY_REQUEST_INVALID', 'Incorrect power mode passed for current power source.' ), PICO_POWER_SUPPLY_UNDERVOLTAGE: ( 'PICO_POWER_SUPPLY_UNDERVOLTAGE', 'The supply voltage from the USB source is too low for PicoTech<model={model}, serial={serial}>.' ), PICO_CAPTURING_DATA: ( 'PICO_CAPTURING_DATA', 'PicoTech<model={model}, serial={serial}> is currently busy capturing data.' ), PICO_USB3_0_DEVICE_NON_USB3_0_PORT: ( 'PICO_USB3_0_DEVICE_NON_USB3_0_PORT', 'A USB 3.0 device is connected to a non-USB 3.0 port.' ), PICO_NOT_SUPPORTED_BY_THIS_DEVICE: ( 'PICO_NOT_SUPPORTED_BY_THIS_DEVICE', 'A function has been called that is not supported by PicoTech<model={model}, serial={serial}>.' ), PICO_INVALID_DEVICE_RESOLUTION: ( 'PICO_INVALID_DEVICE_RESOLUTION', 'The resolution for PicoTech<model={model}, serial={serial}> is invalid (out of range).' ), PICO_INVALID_NUMBER_CHANNELS_FOR_RESOLUTION: ( 'PICO_INVALID_NUMBER_CHANNELS_FOR_RESOLUTION', 'The number of channels which can be enabled is limited in 15 and 16-bit modes.' ), PICO_CHANNEL_DISABLED_DUE_TO_USB_POWERED: ( 'PICO_CHANNEL_DISABLED_DUE_TO_USB_POWERED', 'USB Power not sufficient to power all channels on PicoTech<model={model}, serial={serial}>.' ), PICO_SIGGEN_DC_VOLTAGE_NOT_CONFIGURABLE: ( 'PICO_SIGGEN_DC_VOLTAGE_NOT_CONFIGURABLE', '' ), PICO_NO_TRIGGER_ENABLED_FOR_TRIGGER_IN_PRE_TRIG: ( 'PICO_NO_TRIGGER_ENABLED_FOR_TRIGGER_IN_PRE_TRIG', '' ), PICO_TRIGGER_WITHIN_PRE_TRIG_NOT_ARMED: ( 'PICO_TRIGGER_WITHIN_PRE_TRIG_NOT_ARMED', '' ), PICO_TRIGGER_WITHIN_PRE_NOT_ALLOWED_WITH_DELAY: ( 'PICO_TRIGGER_WITHIN_PRE_NOT_ALLOWED_WITH_DELAY', '' ), PICO_TRIGGER_INDEX_UNAVAILABLE: ( 'PICO_TRIGGER_INDEX_UNAVAILABLE', '' ), PICO_AWG_CLOCK_FREQUENCY: ( 'PICO_AWG_CLOCK_FREQUENCY', '' ), PICO_TOO_MANY_CHANNELS_IN_USE: ( 'PICO_TOO_MANY_CHANNELS_IN_USE', 'There are more than 4 analogue channels with a trigger condition set.' ), PICO_NULL_CONDITIONS: ( 'PICO_NULL_CONDITIONS', '' ), PICO_DUPLICATE_CONDITION_SOURCE: ( 'PICO_DUPLICATE_CONDITION_SOURCE', '' ), PICO_INVALID_CONDITION_INFO: ( 'PICO_INVALID_CONDITION_INFO', '' ), PICO_SETTINGS_READ_FAILED: ( 'PICO_SETTINGS_READ_FAILED', '' ), PICO_SETTINGS_WRITE_FAILED: ( 'PICO_SETTINGS_WRITE_FAILED', '' ), PICO_ARGUMENT_OUT_OF_RANGE: ( 'PICO_ARGUMENT_OUT_OF_RANGE', '' ), PICO_HARDWARE_VERSION_NOT_SUPPORTED: ( 'PICO_HARDWARE_VERSION_NOT_SUPPORTED', '' ), PICO_DIGITAL_HARDWARE_VERSION_NOT_SUPPORTED: ( 'PICO_DIGITAL_HARDWARE_VERSION_NOT_SUPPORTED', '' ), PICO_ANALOGUE_HARDWARE_VERSION_NOT_SUPPORTED: ( 'PICO_ANALOGUE_HARDWARE_VERSION_NOT_SUPPORTED', '' ), PICO_UNABLE_TO_CONVERT_TO_RESISTANCE: ( 'PICO_ANALOGUE_HARDWARE_VERSION_NOT_SUPPORTED', '' ), PICO_DUPLICATED_CHANNEL: ( 'PICO_DUPLICATED_CHANNEL', '' ), PICO_INVALID_RESISTANCE_CONVERSION: ( 'PICO_INVALID_RESISTANCE_CONVERSION', '' ), PICO_INVALID_VALUE_IN_MAX_BUFFER: ( 'PICO_INVALID_VALUE_IN_MAX_BUFFER', '' ), PICO_INVALID_VALUE_IN_MIN_BUFFER: ( 'PICO_INVALID_VALUE_IN_MIN_BUFFER', '' ), PICO_SIGGEN_FREQUENCY_OUT_OF_RANGE: ( 'PICO_SIGGEN_FREQUENCY_OUT_OF_RANGE', '' ), PICO_EEPROM2_CORRUPT: ( 'PICO_EEPROM2_CORRUPT', '' ), PICO_EEPROM2_FAIL: ( 'PICO_EEPROM2_FAIL', '' ), PICO_SERIAL_BUFFER_TOO_SMALL: ( 'PICO_SERIAL_BUFFER_TOO_SMALL', 'The serial buffer is too small for the required information.' ), PICO_SIGGEN_TRIGGER_AND_EXTERNAL_CLOCK_CLASH: ( 'PICO_SIGGEN_TRIGGER_AND_EXTERNAL_CLOCK_CLASH', 'The signal generator trigger and the external clock have both been set.' ), PICO_WARNING_SIGGEN_AUXIO_TRIGGER_DISABLED: ( 'PICO_WARNING_SIGGEN_AUXIO_TRIGGER_DISABLED', 'The AUX trigger was enabled and the external clock has been enabled, so the AUX has been automatically disabled.' ), PICO_SIGGEN_GATING_AUXIO_NOT_AVAILABLE: ( 'PICO_SIGGEN_GATING_AUXIO_NOT_AVAILABLE', 'The AUX I/O was set as a scope trigger and is now being set as a signal generator gating trigger.' ), PICO_SIGGEN_GATING_AUXIO_ENABLED: ( 'PICO_SIGGEN_GATING_AUXIO_ENABLED', 'The AUX I/O was set by the signal generator as a gating trigger and is now being set as a scope trigger.' ), PICO_RESOURCE_ERROR: ( 'PICO_RESOURCE_ERROR', 'A resource has failed to initialise.' ), PICO_TEMPERATURE_TYPE_INVALID: ( 'PICO_TEMPERATURE_TYPE_INVALID', 'The temperature type is out of range.' ), PICO_TEMPERATURE_TYPE_NOT_SUPPORTED: ( 'PICO_TEMPERATURE_TYPE_NOT_SUPPORTED', 'A requested temperature type is not supported on this device.' ), PICO_TIMEOUT: ( 'PICO_TIMEOUT', 'A read/write to the device has timed out.' ), PICO_DEVICE_NOT_FUNCTIONING: ( 'PICO_DEVICE_NOT_FUNCTIONING', 'The device cannot be connected correctly.' ), PICO_INTERNAL_ERROR: ( 'PICO_INTERNAL_ERROR', 'The driver has experienced an unknown error and is unable to recover from this error.' ), PICO_MULTIPLE_DEVICES_FOUND: ( 'PICO_MULTIPLE_DEVICES_FOUND', 'Used when opening units via IP and more than multiple units have the same ip address.' ), PICO_WARNING_NUMBER_OF_SEGMENTS_REDUCED: ( 'PICO_WARNING_NUMBER_OF_SEGMENTS_REDUCED', 'The number of segments has been reduced.' ), PICO_CAL_PINS_STATES: ( 'PICO_CAL_PINS_STATES', 'The calibration pin states argument is out of range.' ), PICO_CAL_PINS_FREQUENCY: ( 'PICO_CAL_PINS_FREQUENCY', 'The calibration pin frequency argument is out of range.' ), PICO_CAL_PINS_AMPLITUDE: ( 'PICO_CAL_PINS_AMPLITUDE', 'The calibration pin amplitude argument is out of range.' ), PICO_CAL_PINS_WAVETYPE: ( 'PICO_CAL_PINS_WAVETYPE', 'The calibration pin wavetype argument is out of range.' ), PICO_CAL_PINS_OFFSET: ( 'PICO_CAL_PINS_OFFSET', 'The calibration pin offset argument is out of range.' ), PICO_PROBE_FAULT: ( 'PICO_PROBE_FAULT', 'The probe\'s identity has a problem.' ), PICO_PROBE_IDENTITY_UNKNOWN: ( 'PICO_PROBE_IDENTITY_UNKNOWN', 'The probe has not been identified.' ), PICO_PROBE_POWER_DC_POWER_SUPPLY_REQUIRED: ( 'PICO_PROBE_POWER_DC_POWER_SUPPLY_REQUIRED', 'Enabling the probe would cause the device to exceed the allowable current limit.' ), PICO_PROBE_NOT_POWERED_WITH_DC_POWER_SUPPLY: ( 'PICO_PROBE_NOT_POWERED_WITH_DC_POWER_SUPPLY', 'The DC power supply is connected; enabling the probe would cause the device to exceed the allowable current limit.' ), PICO_PROBE_CONFIG_FAILURE: ( 'PICO_PROBE_CONFIG_FAILURE', 'Failed to complete probe configuration.' ), PICO_PROBE_INTERACTION_CALLBACK: ( 'PICO_PROBE_INTERACTION_CALLBACK', 'Failed to set the callback function, as currently in current callback function.' ), PICO_UNKNOWN_INTELLIGENT_PROBE: ( 'PICO_UNKNOWN_INTELLIGENT_PROBE', 'The probe has been verified but not know on this driver.' ), PICO_INTELLIGENT_PROBE_CORRUPT: ( 'PICO_INTELLIGENT_PROBE_CORRUPT', 'The intelligent probe cannot be verified.' ), PICO_PROBE_COLLECTION_NOT_STARTED: ( 'PICO_PROBE_COLLECTION_NOT_STARTED', 'The callback is null, probe collection will only start when first callback is a none null pointer.' ), PICO_PROBE_POWER_CONSUMPTION_EXCEEDED: ( 'PICO_PROBE_POWER_CONSUMPTION_EXCEEDED', 'The current drawn by the probe(s) has exceeded the allowed limit.' ), PICO_WARNING_PROBE_CHANNEL_OUT_OF_SYNC: ( 'PICO_WARNING_PROBE_CHANNEL_OUT_OF_SYNC', 'The channel range limits have changed due to connecting or disconnecting a probe the channel has been enabled.' ), PICO_DEVICE_TIME_STAMP_RESET: ( 'PICO_DEVICE_TIME_STAMP_RESET', '' ), PICO_WATCHDOGTIMER: ( 'PICO_WATCHDOGTIMER', '' ), PICO_IPP_NOT_FOUND: ( 'PICO_IPP_NOT_FOUND', 'The picoipp.dll has not been found.' ), PICO_IPP_NO_FUNCTION: ( 'PICO_IPP_NO_FUNCTION', 'A function in the picoipp.dll does not exist.' ), PICO_IPP_ERROR: ( 'PICO_IPP_ERROR', 'The Pico IPP call has failed.' ), PICO_SHADOW_CAL_NOT_AVAILABLE: ( 'PICO_SHADOW_CAL_NOT_AVAILABLE', 'Shadow calibration is not available on this device.' ), PICO_SHADOW_CAL_DISABLED: ( 'PICO_SHADOW_CAL_DISABLED', 'Shadow calibration is currently disabled.' ), PICO_SHADOW_CAL_ERROR: ( 'PICO_SHADOW_CAL_ERROR', 'Shadow calibration error has occurred.' ), PICO_SHADOW_CAL_CORRUPT: ( 'PICO_SHADOW_CAL_CORRUPT', 'The shadow calibration is corrupt.' ), PICO_DEVICE_MEMORY_OVERFLOW: ( 'PICO_DEVICE_MEMORY_OVERFLOW', 'The onboard memory the of device has overflowed.' ), }