/************************************************************************** * * Filename: PicoStatus.h * Copyright: Pico Technology Limited 2002 - 2022 * Description: * * This header files defines the status codes returned by a * Pico device, a PC Oscilloscope or Data Logger. * * In comments, "" is a placeholder for the name of the scope or * data logger API. For example, for the ps5000a API, it stands for * "PS5000A" or "ps5000a". * *************************************************************************/ #ifndef __PICOSTATUS_H__ #define __PICOSTATUS_H__ #include typedef void * PICO_POINTER; #define PICO_DRIVER_VERSION 0x00000000UL #define PICO_USB_VERSION 0x00000001UL #define PICO_HARDWARE_VERSION 0x00000002UL #define PICO_VARIANT_INFO 0x00000003UL #define PICO_BATCH_AND_SERIAL 0x00000004UL #define PICO_CAL_DATE 0x00000005UL #define PICO_KERNEL_VERSION 0x00000006UL #define PICO_DIGITAL_HARDWARE_VERSION 0x00000007UL #define PICO_ANALOGUE_HARDWARE_VERSION 0x00000008UL #define PICO_FIRMWARE_VERSION_1 0x00000009UL #define PICO_FIRMWARE_VERSION_2 0x0000000AUL #define PICO_MAC_ADDRESS 0x0000000BUL #define PICO_SHADOW_CAL 0x0000000CUL #define PICO_IPP_VERSION 0x0000000DUL #define PICO_DRIVER_PATH 0x0000000EUL #define PICO_FIRMWARE_VERSION_3 0x0000000FUL #define PICO_FRONT_PANEL_FIRMWARE_VERSION 0x00000010UL #define PICO_BOOTLOADER_VERSION 0x10000001UL typedef uint32_t PICO_INFO; // The PicoScope is functioning correctly. #define PICO_OK 0x00000000UL // An attempt has been made to open more than _MAX_UNITS. #define PICO_MAX_UNITS_OPENED 0x00000001UL // Not enough memory could be allocated on the host machine. #define PICO_MEMORY_FAIL 0x00000002UL // No Pico Technology device could be found. #define PICO_NOT_FOUND 0x00000003UL // Unable to download firmware. #define PICO_FW_FAIL 0x00000004UL // The driver is busy opening a device. #define PICO_OPEN_OPERATION_IN_PROGRESS 0x00000005UL // An unspecified failure occurred. #define PICO_OPERATION_FAILED 0x00000006UL // The PicoScope is not responding to commands from the PC. #define PICO_NOT_RESPONDING 0x00000007UL // The configuration information in the PicoScope is corrupt or missing. #define PICO_CONFIG_FAIL 0x00000008UL // The picopp.sys file is too old to be used with the device driver. #define PICO_KERNEL_DRIVER_TOO_OLD 0x00000009UL // The EEPROM has become corrupt, so the device will use a default setting. #define PICO_EEPROM_CORRUPT 0x0000000AUL // The operating system on the PC is not supported by this driver. #define PICO_OS_NOT_SUPPORTED 0x0000000BUL // There is no device with the handle value passed. #define PICO_INVALID_HANDLE 0x0000000CUL // A parameter value is not valid. #define PICO_INVALID_PARAMETER 0x0000000DUL // The timebase is not supported or is invalid. #define PICO_INVALID_TIMEBASE 0x0000000EUL // The voltage range is not supported or is invalid. #define PICO_INVALID_VOLTAGE_RANGE 0x0000000FUL // The channel number is not valid on this device or no channels have been set. #define PICO_INVALID_CHANNEL 0x00000010UL // The channel set for a trigger is not available on this device. #define PICO_INVALID_TRIGGER_CHANNEL 0x00000011UL // The channel set for a condition is not available on this device. #define PICO_INVALID_CONDITION_CHANNEL 0x00000012UL // The device does not have a signal generator. #define PICO_NO_SIGNAL_GENERATOR 0x00000013UL // Streaming has failed to start or has stopped without user request. #define PICO_STREAMING_FAILED 0x00000014UL // Block failed to start - a parameter may have been set wrongly. #define PICO_BLOCK_MODE_FAILED 0x00000015UL // A parameter that was required is NULL. #define PICO_NULL_PARAMETER 0x00000016UL // The current functionality is not available while using ETS capture mode. #define PICO_ETS_MODE_SET 0x00000017UL // No data is available from a run block call. #define PICO_DATA_NOT_AVAILABLE 0x00000018UL // The buffer passed for the information was too small. #define PICO_STRING_BUFFER_TO_SMALL 0x00000019UL // ETS is not supported on this device. #define PICO_ETS_NOT_SUPPORTED 0x0000001AUL // The auto trigger time is less than the time it will take to collect the pre-trigger data. #define PICO_AUTO_TRIGGER_TIME_TO_SHORT 0x0000001BUL // The collection of data has stalled as unread data would be overwritten. #define PICO_BUFFER_STALL 0x0000001CUL // Number of samples requested is more than available in the current memory segment. #define PICO_TOO_MANY_SAMPLES 0x0000001DUL // Not possible to create number of segments requested. #define PICO_TOO_MANY_SEGMENTS 0x0000001EUL // A null pointer has been passed in the trigger function or one of the parameters is out of range. #define PICO_PULSE_WIDTH_QUALIFIER 0x0000001FUL // One or more of the hold-off parameters are out of range. #define PICO_DELAY 0x00000020UL // One or more of the source details are incorrect. #define PICO_SOURCE_DETAILS 0x00000021UL // One or more of the conditions are incorrect. #define PICO_CONDITIONS 0x00000022UL // The driver's thread is currently in the Ready callback // function and therefore the action cannot be carried out. #define PICO_USER_CALLBACK 0x00000023UL // An attempt is being made to get stored data while streaming. // Either stop streaming by calling Stop, or use GetStreamingLatestValues. #define PICO_DEVICE_SAMPLING 0x00000024UL // Data is unavailable because a run has not been completed. #define PICO_NO_SAMPLES_AVAILABLE 0x00000025UL // The memory segment index is out of range. #define PICO_SEGMENT_OUT_OF_RANGE 0x00000026UL // The device is busy so data cannot be returned yet. #define PICO_BUSY 0x00000027UL // The start time to get stored data is out of range. #define PICO_STARTINDEX_INVALID 0x00000028UL // The information number requested is not a valid number. #define PICO_INVALID_INFO 0x00000029UL // The handle is invalid so no information is available about the device. // Only PICO_DRIVER_VERSION is available. #define PICO_INFO_UNAVAILABLE 0x0000002AUL // The sample interval selected for streaming is out of range. #define PICO_INVALID_SAMPLE_INTERVAL 0x0000002BUL // ETS is set but no trigger has been set. A trigger setting is required for ETS. #define PICO_TRIGGER_ERROR 0x0000002CUL // Driver cannot allocate memory. #define PICO_MEMORY 0x0000002DUL // Incorrect parameter passed to the signal generator. #define PICO_SIG_GEN_PARAM 0x0000002EUL // Conflict between the shots and sweeps parameters sent to the signal generator. #define PICO_SHOTS_SWEEPS_WARNING 0x0000002FUL // A software trigger has been sent but the trigger source is not a software trigger. #define PICO_SIGGEN_TRIGGER_SOURCE 0x00000030UL // An SetTrigger call has found a conflict between the trigger source and the AUX output enable. #define PICO_AUX_OUTPUT_CONFLICT 0x00000031UL // ETS mode is being used and AUX is set as an input. #define PICO_AUX_OUTPUT_ETS_CONFLICT 0x00000032UL // Attempt to set different EXT input thresholds set for signal generator and oscilloscope trigger. #define PICO_WARNING_EXT_THRESHOLD_CONFLICT 0x00000033UL // An SetTrigger... function has set AUX as an output and the signal generator is using it as a trigger. #define PICO_WARNING_AUX_OUTPUT_CONFLICT 0x00000034UL // The combined peak-to-peak voltage and the analog offset voltage exceed the maximum voltage the signal generator can produce. #define PICO_SIGGEN_OUTPUT_OVER_VOLTAGE 0x00000035UL // NULL pointer passed as delay parameter. #define PICO_DELAY_NULL 0x00000036UL // The buffers for overview data have not been set while streaming. #define PICO_INVALID_BUFFER 0x00000037UL // The analog offset voltage is out of range. #define PICO_SIGGEN_OFFSET_VOLTAGE 0x00000038UL // The analog peak-to-peak voltage is out of range. #define PICO_SIGGEN_PK_TO_PK 0x00000039UL // A block collection has been cancelled. #define PICO_CANCELLED 0x0000003AUL // The segment index is not currently being used. #define PICO_SEGMENT_NOT_USED 0x0000003BUL // The wrong GetValues function has been called for the collection mode in use. #define PICO_INVALID_CALL 0x0000003CUL #define PICO_GET_VALUES_INTERRUPTED 0x0000003DUL // The function is not available. #define PICO_NOT_USED 0x0000003FUL // The aggregation ratio requested is out of range. #define PICO_INVALID_SAMPLERATIO 0x00000040UL // Device is in an invalid state. #define PICO_INVALID_STATE 0x00000041UL // The number of segments allocated is fewer than the number of captures requested. #define PICO_NOT_ENOUGH_SEGMENTS 0x00000042UL // A driver function has already been called and not yet finished. // Only one call to the driver can be made at any one time. #define PICO_DRIVER_FUNCTION 0x00000043UL // Not used. #define PICO_RESERVED 0x00000044UL // An invalid coupling type was specified in SetChannel. #define PICO_INVALID_COUPLING 0x00000045UL // An attempt was made to get data before a data buffer was defined. #define PICO_BUFFERS_NOT_SET 0x00000046UL // The selected downsampling mode (used for data reduction) is not allowed. #define PICO_RATIO_MODE_NOT_SUPPORTED 0x00000047UL // Aggregation was requested in rapid block mode. #define PICO_RAPID_NOT_SUPPORT_AGGREGATION 0x00000048UL // An invalid parameter was passed to SetTriggerChannelProperties(V2). #define PICO_INVALID_TRIGGER_PROPERTY 0x00000049UL // The driver was unable to contact the oscilloscope. #define PICO_INTERFACE_NOT_CONNECTED 0x0000004AUL // Resistance-measuring mode is not allowed in conjunction with the specified probe. #define PICO_RESISTANCE_AND_PROBE_NOT_ALLOWED 0x0000004BUL // The device was unexpectedly powered down. #define PICO_POWER_FAILED 0x0000004CUL // A problem occurred in SetSigGenBuiltIn or SetSigGenArbitrary. #define PICO_SIGGEN_WAVEFORM_SETUP_FAILED 0x0000004DUL // FPGA not successfully set up. #define PICO_FPGA_FAIL 0x0000004EUL #define PICO_POWER_MANAGER 0x0000004FUL // An impossible analog offset value was specified in SetChannel. #define PICO_INVALID_ANALOGUE_OFFSET 0x00000050UL // There is an error within the device hardware. #define PICO_PLL_LOCK_FAILED 0x00000051UL // There is an error within the device hardware. #define PICO_ANALOG_BOARD 0x00000052UL // Unable to configure the signal generator. #define PICO_CONFIG_FAIL_AWG 0x00000053UL // The FPGA cannot be initialized, so unit cannot be opened. #define PICO_INITIALISE_FPGA 0x00000054UL // The frequency for the external clock is not within 15% of the nominal value. #define PICO_EXTERNAL_FREQUENCY_INVALID 0x00000056UL // The FPGA could not lock the clock signal. #define PICO_CLOCK_CHANGE_ERROR 0x00000057UL // You are trying to configure the AUX input as both a trigger and a reference clock. #define PICO_TRIGGER_AND_EXTERNAL_CLOCK_CLASH 0x00000058UL // You are trying to configure the AUX input as both a pulse width qualifier and a reference clock. #define PICO_PWQ_AND_EXTERNAL_CLOCK_CLASH 0x00000059UL // The requested scaling file cannot be opened. #define PICO_UNABLE_TO_OPEN_SCALING_FILE 0x0000005AUL // The frequency of the memory is reporting incorrectly. #define PICO_MEMORY_CLOCK_FREQUENCY 0x0000005BUL // The I2C that is being actioned is not responding to requests. #define PICO_I2C_NOT_RESPONDING 0x0000005CUL // There are no captures available and therefore no data can be returned. #define PICO_NO_CAPTURES_AVAILABLE 0x0000005DUL // The number of trigger channels is greater than 4, // except for a PicoScope 4824 where 8 channels are allowed for rising/falling/rising_or_falling trigger directions. #define PICO_TOO_MANY_TRIGGER_CHANNELS_IN_USE 0x0000005FUL // If you have specified a trigger direction which is not allowed, for example specifying PICO_ABOVE // without another condition which crosses a threshold on another channel. #define PICO_INVALID_TRIGGER_DIRECTION 0x00000060UL // When more than 4 trigger channels are set and their trigger condition states are not _CONDITION_TRUE. #define PICO_INVALID_TRIGGER_STATES 0x00000061UL // The capture mode the device is currently running in does not support the current request. #define PICO_NOT_USED_IN_THIS_CAPTURE_MODE 0x0000005EUL #define PICO_GET_DATA_ACTIVE 0x00000103UL // Codes 104 to 10B are used by the PT104 (USB) when connected via the Network Socket. // The device is currently connected via the IP Network socket and thus the call made is not supported. #define PICO_IP_NETWORKED 0x00000104UL // An incorrect IP address has been passed to the driver. #define PICO_INVALID_IP_ADDRESS 0x00000105UL // The IP socket has failed. #define PICO_IPSOCKET_FAILED 0x00000106UL // The IP socket has timed out. #define PICO_IPSOCKET_TIMEDOUT 0x00000107UL // Failed to apply the requested settings. #define PICO_SETTINGS_FAILED 0x00000108UL // The network connection has failed. #define PICO_NETWORK_FAILED 0x00000109UL // Unable to load the WS2 DLL. #define PICO_WS2_32_DLL_NOT_LOADED 0x0000010AUL // The specified IP port is invalid. #define PICO_INVALID_IP_PORT 0x0000010BUL // The type of coupling requested is not supported on the opened device. #define PICO_COUPLING_NOT_SUPPORTED 0x0000010CUL // Bandwidth limiting is not supported on the opened device. #define PICO_BANDWIDTH_NOT_SUPPORTED 0x0000010DUL // The value requested for the bandwidth limit is out of range. #define PICO_INVALID_BANDWIDTH 0x0000010EUL // The arbitrary waveform generator is not supported by the opened device. #define PICO_AWG_NOT_SUPPORTED 0x0000010FUL // Data has been requested with ETS mode set but run block has not been called, // or stop has been called. #define PICO_ETS_NOT_RUNNING 0x00000110UL // White noise output is not supported on the opened device. #define PICO_SIG_GEN_WHITENOISE_NOT_SUPPORTED 0x00000111UL // The wave type requested is not supported by the opened device. #define PICO_SIG_GEN_WAVETYPE_NOT_SUPPORTED 0x00000112UL // The requested digital port number is out of range (MSOs only). #define PICO_INVALID_DIGITAL_PORT 0x00000113UL // The digital channel is not in the range _DIGITAL_CHANNEL0 to // _DIGITAL_CHANNEL15, the digital channels that are supported. #define PICO_INVALID_DIGITAL_CHANNEL 0x00000114UL // The digital trigger direction is not a valid trigger direction and should be equal // in value to one of the _DIGITAL_DIRECTION enumerations. #define PICO_INVALID_DIGITAL_TRIGGER_DIRECTION 0x00000115UL // Signal generator does not generate pseudo-random binary sequence. #define PICO_SIG_GEN_PRBS_NOT_SUPPORTED 0x00000116UL // When a digital port is enabled, ETS sample mode is not available for use. #define PICO_ETS_NOT_AVAILABLE_WITH_LOGIC_CHANNELS 0x00000117UL // There has been no new sample taken, this value has already been returned previously. #define PICO_WARNING_REPEAT_VALUE 0x00000118UL // The DC power supply is connected. #define PICO_POWER_SUPPLY_CONNECTED 0x00000119UL // The DC power supply is not connected. // For many 4+ Channel devices this will mean a restricted feature set is offered e.g. for a 4 channel device - C and D are usually disabled. // Check the respective API programmers guide of your device for the full details. #define PICO_POWER_SUPPLY_NOT_CONNECTED 0x0000011AUL // Incorrect power mode passed for current power source. #define PICO_POWER_SUPPLY_REQUEST_INVALID 0x0000011BUL // The supply voltage from the USB source is too low. #define PICO_POWER_SUPPLY_UNDERVOLTAGE 0x0000011CUL // The oscilloscope is in the process of capturing data. #define PICO_CAPTURING_DATA 0x0000011DUL // A USB 3.0 device is connected to a non-USB 3.0 port. #define PICO_USB3_0_DEVICE_NON_USB3_0_PORT 0x0000011EUL // A function has been called that is not supported by the current device. #define PICO_NOT_SUPPORTED_BY_THIS_DEVICE 0x0000011FUL // The device resolution is invalid (out of range). #define PICO_INVALID_DEVICE_RESOLUTION 0x00000120UL // The number of channels that can be enabled is limited in 15 and 16-bit modes. // (Flexible Resolution Oscilloscopes only) #define PICO_INVALID_NUMBER_CHANNELS_FOR_RESOLUTION 0x00000121UL // USB power not sufficient for all requested channels. #define PICO_CHANNEL_DISABLED_DUE_TO_USB_POWERED 0x00000122UL // The signal generator does not have a configurable DC offset. #define PICO_SIGGEN_DC_VOLTAGE_NOT_CONFIGURABLE 0x00000123UL // An attempt has been made to define pre-trigger delay without first enabling a trigger. #define PICO_NO_TRIGGER_ENABLED_FOR_TRIGGER_IN_PRE_TRIG 0x00000124UL // An attempt has been made to define pre-trigger delay without first arming a trigger. #define PICO_TRIGGER_WITHIN_PRE_TRIG_NOT_ARMED 0x00000125UL // Pre-trigger delay and post-trigger delay cannot be used at the same time. #define PICO_TRIGGER_WITHIN_PRE_NOT_ALLOWED_WITH_DELAY 0x00000126UL // The array index points to a nonexistent trigger. #define PICO_TRIGGER_INDEX_UNAVAILABLE 0x00000127UL #define PICO_AWG_CLOCK_FREQUENCY 0x00000128UL // There are more than 4 analog channels with a trigger condition set. #define PICO_TOO_MANY_CHANNELS_IN_USE 0x00000129UL // The condition parameter is a null pointer. #define PICO_NULL_CONDITIONS 0x0000012AUL // There is more than one condition pertaining to the same channel. #define PICO_DUPLICATE_CONDITION_SOURCE 0x0000012BUL // The parameter relating to condition information is out of range. #define PICO_INVALID_CONDITION_INFO 0x0000012CUL // Reading the meta data has failed. #define PICO_SETTINGS_READ_FAILED 0x0000012DUL // Writing the meta data has failed. #define PICO_SETTINGS_WRITE_FAILED 0x0000012EUL // A parameter has a value out of the expected range. #define PICO_ARGUMENT_OUT_OF_RANGE 0x0000012FUL // The driver does not support the hardware variant connected. #define PICO_HARDWARE_VERSION_NOT_SUPPORTED 0x00000130UL // The driver does not support the digital hardware variant connected. #define PICO_DIGITAL_HARDWARE_VERSION_NOT_SUPPORTED 0x00000131UL // The driver does not support the analog hardware variant connected. #define PICO_ANALOGUE_HARDWARE_VERSION_NOT_SUPPORTED 0x00000132UL // Converting a channel's ADC value to resistance has failed. #define PICO_UNABLE_TO_CONVERT_TO_RESISTANCE 0x00000133UL // The channel is listed more than once in the function call. #define PICO_DUPLICATED_CHANNEL 0x00000134UL // The range cannot have resistance conversion applied. #define PICO_INVALID_RESISTANCE_CONVERSION 0x00000135UL // An invalid value is in the max buffer. #define PICO_INVALID_VALUE_IN_MAX_BUFFER 0x00000136UL // An invalid value is in the min buffer. #define PICO_INVALID_VALUE_IN_MIN_BUFFER 0x00000137UL // When calculating the frequency for phase conversion, // the frequency is greater than that supported by the current variant. #define PICO_SIGGEN_FREQUENCY_OUT_OF_RANGE 0x00000138UL // The device's EEPROM is corrupt. Contact Pico Technology support: https://www.picotech.com/tech-support. #define PICO_EEPROM2_CORRUPT 0x00000139UL // The EEPROM has failed. #define PICO_EEPROM2_FAIL 0x0000013AUL // The serial buffer is too small for the required information. #define PICO_SERIAL_BUFFER_TOO_SMALL 0x0000013BUL // The signal generator trigger and the external clock have both been set. // This is not allowed. #define PICO_SIGGEN_TRIGGER_AND_EXTERNAL_CLOCK_CLASH 0x0000013CUL // The AUX trigger was enabled and the external clock has been enabled, // so the AUX has been automatically disabled. #define PICO_WARNING_SIGGEN_AUXIO_TRIGGER_DISABLED 0x0000013DUL // The AUX I/O was set as a scope trigger and is now being set as a signal generator // gating trigger. This is not allowed. #define PICO_SIGGEN_GATING_AUXIO_NOT_AVAILABLE 0x00000013EUL // The AUX I/O was set by the signal generator as a gating trigger and is now being set // as a scope trigger. This is not allowed. #define PICO_SIGGEN_GATING_AUXIO_ENABLED 0x00000013FUL // A resource has failed to initialise. #define PICO_RESOURCE_ERROR 0x00000140UL // The temperature type is out of range. #define PICO_TEMPERATURE_TYPE_INVALID 0x000000141UL // A requested temperature type is not supported on this device. #define PICO_TEMPERATURE_TYPE_NOT_SUPPORTED 0x000000142UL // A read/write to the device has timed out. #define PICO_TIMEOUT 0x00000143UL // The device cannot be connected correctly. #define PICO_DEVICE_NOT_FUNCTIONING 0x00000144UL // The driver has experienced an unknown error and is unable to recover from this error. #define PICO_INTERNAL_ERROR 0x00000145UL // Used when opening units via IP and more than multiple units have the same IP address. #define PICO_MULTIPLE_DEVICES_FOUND 0x00000146UL #define PICO_WARNING_NUMBER_OF_SEGMENTS_REDUCED 0x00000147UL // The calibration pin states argument is out of range. #define PICO_CAL_PINS_STATES 0x00000148UL // The calibration pin frequency argument is out of range. #define PICO_CAL_PINS_FREQUENCY 0x00000149UL // The calibration pin amplitude argument is out of range. #define PICO_CAL_PINS_AMPLITUDE 0x0000014AUL // The calibration pin wavetype argument is out of range. #define PICO_CAL_PINS_WAVETYPE 0x0000014BUL // The calibration pin offset argument is out of range. #define PICO_CAL_PINS_OFFSET 0x0000014CUL // The probe's identity has a problem. #define PICO_PROBE_FAULT 0x0000014DUL // The probe has not been identified. #define PICO_PROBE_IDENTITY_UNKNOWN 0x0000014EUL // Enabling the probe would cause the device to exceed the allowable current limit. #define PICO_PROBE_POWER_DC_POWER_SUPPLY_REQUIRED 0x0000014FUL // The DC power supply is connected; enabling the probe would cause the device to exceed the // allowable current limit. #define PICO_PROBE_NOT_POWERED_WITH_DC_POWER_SUPPLY 0x00000150UL // Failed to complete probe configuration. #define PICO_PROBE_CONFIG_FAILURE 0x00000151UL // Failed to set the callback function, as currently in current callback function. #define PICO_PROBE_INTERACTION_CALLBACK 0x00000152UL // The probe has been verified but not known on this driver. #define PICO_UNKNOWN_INTELLIGENT_PROBE 0x00000153UL // The intelligent probe cannot be verified. #define PICO_INTELLIGENT_PROBE_CORRUPT 0x00000154UL // The callback is null, probe collection will only start when // first callback is a none null pointer. #define PICO_PROBE_COLLECTION_NOT_STARTED 0x00000155UL // The current drawn by the probe(s) has exceeded the allowed limit. #define PICO_PROBE_POWER_CONSUMPTION_EXCEEDED 0x00000156UL // The channel range limits have changed due to connecting or disconnecting a probe // the channel has been enabled. #define PICO_WARNING_PROBE_CHANNEL_OUT_OF_SYNC 0x00000157UL #define PICO_ENDPOINT_MISSING 0x00000158UL #define PICO_UNKNOWN_ENDPOINT_REQUEST 0x00000159UL // The ADC on board the device has not been correctly identified. #define PICO_ADC_TYPE_ERROR 0x0000015AUL #define PICO_FPGA2_FAILED 0x0000015BUL #define PICO_FPGA2_DEVICE_STATUS 0x0000015CUL #define PICO_ENABLE_PROGRAM_FPGA2_FAILED 0x0000015DUL #define PICO_NO_CHANNELS_OR_PORTS_ENABLED 0x0000015EUL #define PICO_INVALID_RATIO_MODE 0x0000015FUL #define PICO_READS_NOT_SUPPORTED_IN_CURRENT_CAPTURE_MODE 0x00000160UL // These selection tests can be masked together to show that mode than one read selection has failed the tests, // therefore theses error codes cover 0x00000161UL to 0x0000016FUL. #define PICO_TRIGGER_READ_SELECTION_CHECK_FAILED 0x00000161UL #define PICO_DATA_READ1_SELECTION_CHECK_FAILED 0x00000162UL #define PICO_DATA_READ2_SELECTION_CHECK_FAILED 0x00000164UL #define PICO_DATA_READ3_SELECTION_CHECK_FAILED 0x00000168UL // The requested read is not one of the reads available in enPicoReadSelection. #define PICO_READ_SELECTION_OUT_OF_RANGE 0x00000170UL // The downsample ratio options cannot be combined together for this request. #define PICO_MULTIPLE_RATIO_MODES 0x00000171UL // The enPicoReadSelection request has no samples available. #define PICO_NO_SAMPLES_READ 0x00000172UL // The enPicoReadSelection did not include one of the downsample ratios now requested. #define PICO_RATIO_MODE_NOT_REQUESTED 0x00000173UL // No read requests have been made. #define PICO_NO_USER_READ_REQUESTS_SET 0x00000174UL // The parameter for cannot be zero. #define PICO_ZERO_SAMPLES_INVALID 0x00000175UL // The analog hardware cannot be identified; contact Pico Technology Technical Support. #define PICO_ANALOGUE_HARDWARE_MISSING 0x00000176UL // Setting of the analog hardware pins failed. #define PICO_ANALOGUE_HARDWARE_PINS 0x00000177UL // An SMPS fault has occurred. #define PICO_ANALOGUE_HARDWARE_SMPS_FAULT 0x00000178UL // There appears to be a conflict between the expected and actual hardware in the device; contact Pico Technology Technical Support. #define PICO_DIGITAL_ANALOGUE_HARDWARE_CONFLICT 0x00000179UL // One or more of the enPicoRatioMode requested do not have a data buffer set. #define PICO_RATIO_MODE_BUFFER_NOT_SET 0x0000017AUL // The resolution is valid but not supported by the opened device. #define PICO_RESOLUTION_NOT_SUPPORTED_BY_VARIANT 0x0000017BUL // The requested trigger threshold is out of range for the current device resolution. #define PICO_THRESHOLD_OUT_OF_RANGE 0x0000017CUL // The simple trigger only supports upper edge direction options. #define PICO_INVALID_SIMPLE_TRIGGER_DIRECTION 0x0000017DUL // The aux trigger is not supported on this variant. #define PICO_AUX_NOT_SUPPORTED 0x0000017EUL // The trigger directions pointer may not be null. #define PICO_NULL_DIRECTIONS 0x0000017FUL // The trigger channel properties pointer may not be null. #define PICO_NULL_CHANNEL_PROPERTIES 0x00000180UL // A trigger is set on a channel that has not been enabled. #define PICO_TRIGGER_CHANNEL_NOT_ENABLED 0x00000181UL // A trigger condition has been set but a trigger property not set. #define PICO_CONDITION_HAS_NO_TRIGGER_PROPERTY 0x00000182UL // When requesting trigger data, this option can only be combined with the segment header ratio mode flag. #define PICO_RATIO_MODE_TRIGGER_MASKING_INVALID 0x00000183UL // The trigger data buffer must be 40 or more samples in size. #define PICO_TRIGGER_DATA_REQUIRES_MIN_BUFFER_SIZE_OF_40_SAMPLES 0x00000184UL // The number of requested waveforms is greater than the number of memory segments allocated. #define PICO_NO_OF_CAPTURES_OUT_OF_RANGE 0x00000185UL // When requesting segment header information, the segment header does not require a data buffer, // to get the segment information use GetTriggerInfo. #define PICO_RATIO_MODE_SEGMENT_HEADER_DOES_NOT_REQUIRE_BUFFERS 0x00000186UL // Use GetTriggerInfo to retrieve the segment header information. #define PICO_FOR_SEGMENT_HEADER_USE_GETTRIGGERINFO 0x00000187UL // A read request has not been set. #define PICO_READ_NOT_SET 0x00000188UL // The expected and actual states of the ADCs do not match. #define PICO_ADC_SETTING_MISMATCH 0x00000189UL // The requested data type is not one of the enPicoDataType listed. #define PICO_DATATYPE_INVALID 0x0000018AUL // The down sample ratio mode requested does not support the enPicoDataType option chosen. #define PICO_RATIO_MODE_DOES_NOT_SUPPORT_DATATYPE 0x0000018BUL // The channel combination is not valid for the resolution. #define PICO_CHANNEL_COMBINATION_NOT_VALID_IN_THIS_RESOLUTION 0x0000018CUL #define PICO_USE_8BIT_RESOLUTION 0x0000018DUL // The buffer for minimum data values and maximum data values are the same buffers. #define PICO_AGGREGATE_BUFFERS_SAME_POINTER 0x0000018EUL // The read request number of samples requested for an overlapped operation are more // than the total number of samples to capture. #define PICO_OVERLAPPED_READ_VALUES_OUT_OF_RANGE 0x0000018FUL // The overlapped read request has more segments specified than segments allocated. #define PICO_OVERLAPPED_READ_SEGMENTS_OUT_OF_RANGE 0x00000190UL // The number of channel combinations available are greater than the array size received. #define PICO_CHANNELFLAGSCOMBINATIONS_ARRAY_SIZE_TOO_SMALL 0x00000191UL // The number of captures is larger than the maximum number of segments allowed for the device variant. #define PICO_CAPTURES_EXCEEDS_NO_OF_SUPPORTED_SEGMENTS 0x00000192UL // The time unit requested is not one of the listed enPicoTimeUnits. #define PICO_TIME_UNITS_OUT_OF_RANGE 0x00000193UL // The number of samples parameter may not be zero. #define PICO_NO_SAMPLES_REQUESTED 0x00000194UL // The action requested is not listed in enPicoAction. #define PICO_INVALID_ACTION 0x00000195UL // When adding buffers for the same read request the buffers for all ratio mode requests have to be the same size. #define PICO_NO_OF_SAMPLES_NEED_TO_BE_EQUAL_WHEN_ADDING_BUFFERS 0x00000196UL // The data is being processed but there is no empty data buffers available, a new data buffer needs to be set sent to the driver // so that the data can be processed. #define PICO_WAITING_FOR_DATA_BUFFERS 0x00000197UL // when streaming data, only one read option is available. #define PICO_STREAMING_ONLY_SUPPORTS_ONE_READ 0x00000198UL // A clear read request is not one of the enPicoAction listed. #define PICO_CLEAR_DATA_BUFFER_INVALID 0x00000199UL // The combination of action flags are not allowed. #define PICO_INVALID_ACTION_FLAGS_COMBINATION 0x0000019AUL // PICO_ADD request has been made but both data buffers are set to null and so there is nowhere to put the data. #define PICO_BOTH_MIN_AND_MAX_NULL_BUFFERS_CANNOT_BE_ADDED 0x0000019BUL // A conflict between the data buffers being set has occurred. Please use the PICO_CLEAR_ALL action to reset. #define PICO_CONFLICT_IN_SET_DATA_BUFFERS_CALL_REMOVE_DATA_BUFFER_TO_RESET 0x0000019CUL // While processing data, buffers cannot be removed from the data buffers list. #define PICO_REMOVING_DATA_BUFFER_ENTRIES_NOT_ALLOWED_WHILE_DATA_PROCESSING 0x0000019DUL // An USB request has failed. #define PICO_CYUSB_REQUEST_FAILED 0x00000200UL // A request has been made to retrieve the latest streaming data, but with either a null pointer or an array size set to zero. #define PICO_STREAMING_DATA_REQUIRED 0x00000201UL // A buffer being set has a length that is invalid (ie less than zero). #define PICO_INVALID_NUMBER_OF_SAMPLES 0x00000202UL // The distribution size may not be zero. #define PICO_INVALID_DISTRIBUTION 0x00000203UL // The buffer length in bytes is greater than a 4-byte word. #define PICO_BUFFER_LENGTH_GREATER_THAN_INT32_T 0x00000204UL // The PLL has failed. #define PICO_PLL_MUX_OUT_FAILED 0x00000209UL // Pulse width only supports one direction. #define PICO_ONE_PULSE_WIDTH_DIRECTION_ALLOWED 0x0000020AUL // There is no external trigger available on the device specified by the handle. #define PICO_EXTERNAL_TRIGGER_NOT_SUPPORTED 0x0000020BUL // The condition parameter is a null pointer. #define PICO_NO_TRIGGER_CONDITIONS_SET 0x0000020CUL // The number of trigger channel properties it outside the allowed range (is less than zero). #define PICO_NO_OF_CHANNEL_TRIGGER_PROPERTIES_OUT_OF_RANGE 0x0000020DUL // A probe has been plugged into a channel, but can not be identified correctly. #define PICO_PROBE_COMPONENT_ERROR 0x0000020EUL // The probe is incompatible with the device channel it is connected to. This could lead to error in the measurements. #define PICO_INCOMPATIBLE_PROBE 0x0000020FUL // The requested channel for ETS triggering is not supported. #define PICO_INVALID_TRIGGER_CHANNEL_FOR_ETS 0x00000210UL // While the device is streaming the get values method is not available #define PICO_NOT_AVAILABLE_WHEN_STREAMING_IS_RUNNING 0x00000211UL // the requested state is not one of the enSharedTriggerWithinPreTrigger values #define PICO_INVALID_TRIGGER_WITHIN_PRE_TRIGGER_STATE 0x00000212UL // the number of captures have to be greater than zero #define PICO_ZERO_NUMBER_OF_CAPTURES_INVALID 0x00000213UL // the quantifier for a pointer, defining the length in bytes is invalid #define PICO_INVALID_LENGTH 0x00000214UL // the trigger delay is greater than supported by the hardware #define PICO_TRIGGER_DELAY_OUT_OF_RANGE 0x00000300UL // the requested threshold direction is not allowed with the specified channel #define PICO_INVALID_THRESHOLD_DIRECTION 0x00000301UL // the requested threshold mode is not allowed with the specified channel #define PICO_INVALID_THRESHOLD_MODE 0x00000302UL // The timebase is not supported or is invalid. #define PICO_TIMEBASE_NOT_SUPPORTED_BY_RESOLUTION 0x00000303UL // The device variant is not supported by this current driver. #define PICO_INVALID_VARIANT 0x00001000UL // The actual memory module does not match the expected memory module. #define PICO_MEMORY_MODULE_ERROR 0x00001001UL // A null pointer has been passed in the trigger function or one of the parameters is out of range. #define PICO_PULSE_WIDTH_QUALIFIER_LOWER_UPPER_CONFILCT 0x00002000UL // The pulse width qualifier type is not one of the listed options. #define PICO_PULSE_WIDTH_QUALIFIER_TYPE 0x00002001UL // The pulse width qualifier direction is not one of the listed options. #define PICO_PULSE_WIDTH_QUALIFIER_DIRECTION 0x00002002UL // The threshold range is not one of the listed options. #define PICO_THRESHOLD_MODE_OUT_OF_RANGE 0x00002003UL // The trigger direction and pulse width option conflict with each other. #define PICO_TRIGGER_AND_PULSEWIDTH_DIRECTION_IN_CONFLICT 0x00002004UL // The thresholds upper limits and thresholds lower limits conflict with each other. #define PICO_THRESHOLD_UPPER_LOWER_MISMATCH 0x00002005UL // The pulse width lower count is out of range. #define PICO_PULSE_WIDTH_LOWER_OUT_OF_RANGE 0x00002006UL // The pulse width upper count is out of range. #define PICO_PULSE_WIDTH_UPPER_OUT_OF_RANGE 0x00002007UL // The devices front panel has caused an error. #define PICO_FRONT_PANEL_ERROR 0x00002008UL // The actual and expected mode of the front panel do not match. #define PICO_FRONT_PANEL_MODE 0x0000200BUL // A front panel feature is not available or failed to configure. #define PICO_FRONT_PANEL_FEATURE 0x0000200CUL // When setting the pulse width conditions either the pointer is null or the number of conditions is set to zero. #define PICO_NO_PULSE_WIDTH_CONDITIONS_SET 0x0000200DUL // a trigger condition exists for a port, but the port has not been enabled #define PICO_TRIGGER_PORT_NOT_ENABLED 0x0000200EUL // a trigger condition exists for a port, but no digital channel directions have been set #define PICO_DIGITAL_DIRECTION_NOT_SET 0x0000200FUL #define PICO_I2C_DEVICE_INVALID_READ_COMMAND 0x00002010UL #define PICO_I2C_DEVICE_INVALID_RESPONSE 0x00002011UL #define PICO_I2C_DEVICE_INVALID_WRITE_COMMAND 0x00002012UL #define PICO_I2C_DEVICE_ARGUMENT_OUT_OF_RANGE 0x00002013UL // The actual and expected mode do not match. #define PICO_I2C_DEVICE_MODE 0x00002014UL // While trying to configure the device, set up failed. #define PICO_I2C_DEVICE_SETUP_FAILED 0x00002015UL // A feature is not available or failed to configure. #define PICO_I2C_DEVICE_FEATURE 0x00002016UL // The device did not pass the validation checks. #define PICO_I2C_DEVICE_VALIDATION_FAILED 0x00002017UL #define PICO_INTERNAL_HEADER_ERROR 0x00002018UL // The device couldn't write the channel settings due to a hardware fault #define PICO_FAILED_TO_WRITE_HARDWARE_FAULT 0x00002019UL // The number of MSO's edge transitions being set is not supported by this device (RISING, FALLING, or RISING_OR_FALLING). #define PICO_MSO_TOO_MANY_EDGE_TRANSITIONS_WHEN_USING_PULSE_WIDTH 0x00003000UL // A probe LED position requested is not one of the available probe positions in the ProbeLedPosition enum. #define PICO_INVALID_PROBE_LED_POSITION 0x00003001UL // The LED position is not supported by the selected variant. #define PICO_PROBE_LED_POSITION_NOT_SUPPORTED 0x00003002UL // A channel has more than one of the same LED position in the ProbeChannelLedSetting struct. #define PICO_DUPLICATE_PROBE_CHANNEL_LED_POSITION 0x00003003UL // Setting the probes LED has failed. #define PICO_PROBE_LED_FAILURE 0x00003004UL // Probe is not supported by the selected variant. #define PICO_PROBE_NOT_SUPPORTED_BY_THIS_DEVICE 0x00003005UL // The probe name is not in the list of enPicoConnectProbe enums. #define PICO_INVALID_PROBE_NAME 0x00003006UL // The number of colour settings are zero or a null pointer passed to the function. #define PICO_NO_PROBE_COLOUR_SETTINGS 0x00003007UL // Channel has no probe connected to it. #define PICO_NO_PROBE_CONNECTED_ON_REQUESTED_CHANNEL 0x00003008UL // Connected probe does not require calibration. #define PICO_PROBE_DOES_NOT_REQUIRE_CALIBRATION 0x00003009UL // Connected probe could not be calibrated - hardware fault is a possible cause. #define PICO_PROBE_CALIBRATION_FAILED 0x0000300AUL // A probe has been connected, but the version is not recognised. #define PICO_PROBE_VERSION_ERROR 0x0000300BUL // The channel with the frequency counter enabled has a probe connected that does not support this feature #define PICO_PROBE_DOES_NOT_SUPPORT_FREQUENCY_COUNTER 0x0000300CUL // The requested trigger time is to long for the selected variant. #define PICO_AUTO_TRIGGER_TIME_TOO_LONG 0x00004000UL // The MSO pod did not pass the validation checks. #define PICO_MSO_POD_VALIDATION_FAILED 0x00005000UL // No MSO pod found on the requested digital port. #define PICO_NO_MSO_POD_CONNECTED 0x00005001UL // the digital port enum value is not in the enPicoDigitalPortHysteresis declaration #define PICO_DIGITAL_PORT_HYSTERESIS_OUT_OF_RANGE 0x00005002UL #define PICO_MSO_POD_FAILED_UNIT 0x00005003UL // The device's EEPROM is corrupt. Contact Pico Technology support: https://www.picotech.com/tech-support. #define PICO_ATTENUATION_FAILED 0x00005004UL // a channel set to the 50Ohm Path has Tripped due to the input signal #define PICO_DC_50OHM_OVERVOLTAGE_TRIPPED 0x00005005UL // The MSO pod over current protection activated, unplug and replug the MSO pod #define PICO_MSO_OVER_CURRENT_TRIPPED 0x00005006UL // Status error for when the device has overheated. #define PICO_NOT_RESPONDING_OVERHEATED 0x00005010UL // waiting for the device to capture timed out #define PICO_HARDWARE_CAPTURE_TIMEOUT 0x00006000UL // waiting for the device be ready for capture timed out #define PICO_HARDWARE_READY_TIMEOUT 0x00006001UL // the driver is performing a capture requested by RunStreaming or RunBlock // to interrupt this capture call Stop on the device first #define PICO_HARDWARE_CAPTURING_CALL_STOP 0x00006002UL // the number of samples is less than the minimum number allowed #define PICO_TOO_FEW_REQUESTED_STREAMING_SAMPLES 0x00007000UL // a streaming capture has been made but re-reading the data is not allowed #define PICO_STREAMING_REREAD_DATA_NOT_AVAILABLE 0x00007001UL // When requesting data only Raw and one of the following aggregation data types allowed // - PICO_RATIO_MODE_AGGREGATE (Min Max), // PICO_RATIO_MODE_DECIMATE, // PICO_RATIO_MODE_AVERAGE and/or PICO_RATIO_MODE_SUM, // PICO_RATIO_MODE_DISTRIBUTION // // average and sum are classed as one aggregation type #define PICO_STREAMING_COMBINATION_OF_RAW_DATA_AND_ONE_AGGREGATION_DATA_TYPE_ALLOWED 0x00007002UL // The time stamp per waveform segment has been reset. #define PICO_DEVICE_TIME_STAMP_RESET 0x01000000UL // When requesting the TriggerTimeOffset the trigger time has not been set. #define PICO_TRIGGER_TIME_NOT_REQUESTED 0x02000001UL // Trigger time buffer not set. #define PICO_TRIGGER_TIME_BUFFER_NOT_SET 0x02000002UL // The trigger time failed to be calculated. #define PICO_TRIGGER_TIME_FAILED_TO_CALCULATE 0x02000004UL // The trigger time failed to be calculated. #define PICO_TRIGGER_WITHIN_A_PRE_TRIGGER_FAILED_TO_CALCULATE 0x02000008UL // The trigger time stamp was not requested. #define PICO_TRIGGER_TIME_STAMP_NOT_REQUESTED 0x02000100UL // RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION cannot have a buffer set #define PICO_RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION_DOES_NOT_REQUIRE_BUFFERS 0x02200000UL // it is not possible to set a buffer for RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION therefore // information is not available pertaining to samples #define PICO_RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION_DOES_NOT_HAVE_BUFFERS 0x02200001UL // to get the trigger time use either GetTriggerInfo or GetTriggerTimeOffset api calls #define PICO_RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION_USE_GETTRIGGERINFO 0x02200002UL // PICO_RATIO_MDOE_TRIGGER and RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION is not supported in streaming capture #define PICO_STREAMING_DOES_NOT_SUPPORT_TRIGGER_RATIO_MODES 0x02200003UL // only the PICO_TRIGGER_READ may be used to read PICO_RATIO_MODE_TRIGGER, and PICO_RATIO_MODE_TRIGGER_FOR_CALCULATION #define PICO_USE_THE_TRIGGER_READ 0x02200004UL // one of the PICO_DATA_READs should be used to read: // PICO_RATIO_MODE_RAW // PICO_RATIO_MODE_AGGREGATE // PICO_RATIO_MODE_DECIMATE // PICO_RATIO_MODE_AVERAGE #define PICO_USE_A_DATA_READ 0x02200005UL // trigger data always requires a PICO_INT16_T data type #define PICO_TRIGGER_READ_REQUIRES_INT16_T_DATA_TYPE 0x02200006UL // a ratio mode passed to the API call requires the number of samples to be greater than zero #define PICO_RATIO_MODE_REQUIRES_NUMBER_OF_SAMPLES_TO_BE_SET 0x02200007UL // Attempted to set up the signal generator with an inconsistent configuration. #define PICO_SIGGEN_SETTINGS_MISMATCH 0x03000010UL // The signal generator has been partially reconfigured and the new settings must be applied before it can be paused or restarted. #define PICO_SIGGEN_SETTINGS_CHANGED_CALL_APPLY 0x03000011UL // The wave type is not listed in enPicoWaveType. #define PICO_SIGGEN_WAVETYPE_NOT_SUPPORTED 0x03000012UL // The trigger type is not listed in enSigGenTrigType. #define PICO_SIGGEN_TRIGGERTYPE_NOT_SUPPORTED 0x03000013UL // The trigger source is not listed in enSigGenTrigSource. #define PICO_SIGGEN_TRIGGERSOURCE_NOT_SUPPORTED 0x03000014UL // The filter state is not listed in enPicoSigGenFilterState. #define PICO_SIGGEN_FILTER_STATE_NOT_SUPPORTED 0x03000015UL // The arbitrary waveform buffer is a null pointer. #define PICO_SIGGEN_NULL_PARAMETER 0x03000020UL // The arbitrary waveform buffer length is zero. #define PICO_SIGGEN_EMPTY_BUFFER_SUPPLIED 0x03000021UL // The sig gen voltage offset and peak to peak have not been set. #define PICO_SIGGEN_RANGE_NOT_SUPPLIED 0x03000022UL // The sig gen arbitrary waveform buffer not been set. #define PICO_SIGGEN_BUFFER_NOT_SUPPLIED 0x03000023UL // The sig gen frequency have not been set. #define PICO_SIGGEN_FREQUENCY_NOT_SUPPLIED 0x03000024UL // The sig gen sweep information has not been set. #define PICO_SIGGEN_SWEEP_INFO_NOT_SUPPLIED 0x03000025UL // The sig gen trigger information has not been set. #define PICO_SIGGEN_TRIGGER_INFO_NOT_SUPPLIED 0x03000026UL // The sig gen clock frequency have not been set. #define PICO_SIGGEN_CLOCK_FREQ_NOT_SUPPLIED 0x03000027UL // The sig gen arbitrary waveform buffer length is too long. #define PICO_SIGGEN_TOO_MANY_SAMPLES 0x03000030UL // The duty cycle value is out of range. #define PICO_SIGGEN_DUTYCYCLE_OUT_OF_RANGE 0x03000031UL // The number of cycles is out of range. #define PICO_SIGGEN_CYCLES_OUT_OF_RANGE 0x03000032UL // The pre-scaler is out of range. #define PICO_SIGGEN_PRESCALE_OUT_OF_RANGE 0x03000033UL // The sweep type is not listed in enPicoSweepType. #define PICO_SIGGEN_SWEEPTYPE_INVALID 0x03000034UL // A mismatch has occurred while checking the sweeps wave type. #define PICO_SIGGEN_SWEEP_WAVETYPE_MISMATCH 0x03000035UL // The sweeps or shots and trigger type are not valid when combined together. #define PICO_SIGGEN_INVALID_SWEEP_PARAMETERS 0x03000036UL // The sweep and prescaler are not valid when combined together. #define PICO_SIGGEN_SWEEP_PRESCALE_NOT_SUPPORTED 0x03000037UL // The potential applied to the AWG output exceeds the maximum voltage range of the AWG. #define PICO_AWG_OVER_VOLTAGE_RANGE 0x03000038UL // The reference signal cannot be locked to. #define PICO_NOT_LOCKED_TO_REFERENCE_FREQUENCY 0x03000039UL // (Linux only.) udev rules are incorrectly configured. The user does // not have read/write permissions on the device's file descriptor. #define PICO_PERMISSIONS_ERROR 0x03000040UL // The digital ports without analog channels are only allowed in 8-bit resolution. #define PICO_PORTS_WITHOUT_ANALOGUE_CHANNELS_ONLY_ALLOWED_IN_8BIT_RESOLUTION 0x03001000UL #define PICO_ANALOGUE_FRONTEND_MISSING 0x03003001UL #define PICO_FRONT_PANEL_MISSING 0x03003002UL #define PICO_ANALOGUE_FRONTEND_AND_FRONT_PANEL_MISSING 0x03003003UL // The digital board has reported an error to the driver #define PICO_DIGITAL_BOARD_HARDWARE_ERROR 0x03003800UL // checking if the firmware needs updating the updateRequired parameter is null #define PICO_FIRMWARE_UPDATE_REQUIRED_TO_USE_DEVICE_WITH_THIS_DRIVER 0x03004000UL #define PICO_UPDATE_REQUIRED_NULL 0x03004001UL #define PICO_FIRMWARE_UP_TO_DATE 0x03004002UL #define PICO_FLASH_FAIL 0x03004003UL #define PICO_INTERNAL_ERROR_FIRMWARE_LENGTH_INVALID 0x03004004UL #define PICO_INTERNAL_ERROR_FIRMWARE_NULL 0x03004005UL #define PICO_FIRMWARE_FAILED_TO_BE_CHANGED 0x03004006UL #define PICO_FIRMWARE_FAILED_TO_RELOAD 0x03004007UL #define PICO_FIRMWARE_FAILED_TO_BE_UPDATE 0x03004008UL #define PICO_FIRMWARE_VERSION_OUT_OF_RANGE 0x03004009UL #define PICO_OPTIONAL_BOOTLOADER_UPDATE_AVAILABLE_WITH_THIS_DRIVER 0x03005000UL #define PICO_BOOTLOADER_VERSION_NOT_AVAILABLE 0x03005001UL #define PICO_NO_APPS_AVAILABLE 0x03008000UL #define PICO_UNSUPPORTED_APP 0x03008001UL // the adc is powered down when trying to capture data #define PICO_ADC_POWERED_DOWN 0x03002000UL // An internal error has occurred and a watchdog timer has been called. #define PICO_WATCHDOGTIMER 0x10000000UL // The picoipp.dll has not been found. #define PICO_IPP_NOT_FOUND 0x10000001UL // A function in the picoipp.dll does not exist. #define PICO_IPP_NO_FUNCTION 0x10000002UL // The Pico IPP call has failed. #define PICO_IPP_ERROR 0x10000003UL // Shadow calibration is not available on this device. #define PICO_SHADOW_CAL_NOT_AVAILABLE 0x10000004UL // Shadow calibration is currently disabled. #define PICO_SHADOW_CAL_DISABLED 0x10000005UL // Shadow calibration error has occurred. #define PICO_SHADOW_CAL_ERROR 0x10000006UL // The shadow calibration is corrupt. #define PICO_SHADOW_CAL_CORRUPT 0x10000007UL // The memory on board the device has overflowed. #define PICO_DEVICE_MEMORY_OVERFLOW 0x10000008UL //The device Adc test failed. #define PICO_ADC_TEST_FAILURE 0x10000010UL #define PICO_RESERVED_1 0x11000000UL // The PicoSource device is not ready to accept instructions. #define PICO_SOURCE_NOT_READY 0x20000000UL #define PICO_SOURCE_INVALID_BAUD_RATE 0x20000001UL #define PICO_SOURCE_NOT_OPENED_FOR_WRITE 0x20000002UL #define PICO_SOURCE_FAILED_TO_WRITE_DEVICE 0x20000003UL #define PICO_SOURCE_EEPROM_FAIL 0x20000004UL #define PICO_SOURCE_EEPROM_NOT_PRESENT 0x20000005UL #define PICO_SOURCE_EEPROM_NOT_PROGRAMMED 0x20000006UL #define PICO_SOURCE_LIST_NOT_READY 0x20000007UL #define PICO_SOURCE_FTD2XX_NOT_FOUND 0x20000008UL #define PICO_SOURCE_FTD2XX_NO_FUNCTION 0x20000009UL typedef uint32_t PICO_STATUS; typedef enum enPicoStringValue { PICO_SV_MEMORY, PICO_SV_MEMORY_NO_OF_SEGMENTS, PICO_SV_MEMORY_MAX_SAMPLES, PICO_SV_NO_OF_CHANNELS, PICO_SV_ARRAY_OF_CHANNELS, PICO_SV_CHANNEL, PICO_SV_CHANNEL_NAME, PICO_SV_CHANNEL_RANGE, PICO_SV_CHANNEL_COUPLING, PICO_SV_CHANNEL_ENABLED, PICO_SV_CHANNEL_ANALOGUE_OFFSET, PICO_SV_CHANNEL_FILTER, PICO_SV_TRIGGER, PICO_SV_TRIGGER_AUXIO_OUTPUT_ENABLED, PICO_SV_TRIGGER_AUTO_TRIGGER_MICROSECONDS, PICO_SV_TRIGGER_PROPERTIES, PICO_SV_NO_OF_TRIGGER_PROPERTIES, PICO_SV_TRIGGER_PROPERTIES_CHANNEL, PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_UPPER, PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_UPPER_HYSTERESIS, PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_LOWER, PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_LOWER_HYSTERESIS, PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_MODE, PICO_SV_TRIGGER_ARRAY_OF_BLOCK_CONDITIONS, PICO_SV_TRIGGER_NO_OF_BLOCK_CONDITIONS, PICO_SV_TRIGGER_CONDITIONS, PICO_SV_TRIGGER_NO_OF_CONDITIONS, PICO_SV_TRIGGER_CONDITION_SOURCE, PICO_SV_TRIGGER_CONDITION_STATE, PICO_SV_TRIGGER_DIRECTION, PICO_SV_TRIGGER_NO_OF_DIRECTIONS, PICO_SV_TRIGGER_DIRECTION_CHANNEL, PICO_SV_TRIGGER_DIRECTION_DIRECTION, PICO_SV_TRIGGER_DELAY, PICO_SV_TRIGGER_DELAY_MS, PICO_SV_FREQUENCY_COUNTER, PICO_SV_FREQUENCY_COUNTER_ENABLED, PICO_SV_FREQUENCY_COUNTER_CHANNEL, PICO_SV_FREQUENCY_COUNTER_RANGE, PICO_SV_FREQUENCY_COUNTER_TRESHOLDMAJOR, PICO_SV_FREQUENCY_COUNTER_TRESHOLDMINOR, PICO_SV_PULSE_WIDTH_PROPERTIES, PICO_SV_PULSE_WIDTH_PROPERTIES_DIRECTION, PICO_SV_PULSE_WIDTH_PROPERTIES_LOWER, PICO_SV_PULSE_WIDTH_PROPERTIES_UPPER, PICO_SV_PULSE_WIDTH_PROPERTIES_TYPE, PICO_SV_PULSE_WIDTH_ARRAY_OF_BLOCK_CONDITIONS, PICO_SV_PULSE_WIDTH_NO_OF_BLOCK_CONDITIONS, PICO_SV_PULSE_WIDTH_CONDITIONS, PICO_SV_PULSE_WIDTH_NO_OF_CONDITIONS, PICO_SV_PULSE_WIDTH_CONDITIONS_SOURCE, PICO_SV_PULSE_WIDTH_CONDITIONS_STATE, PICO_SV_SAMPLE_PROPERTIES, PICO_SV_SAMPLE_PROPERTIES_PRE_TRIGGER_SAMPLES, PICO_SV_SAMPLE_PROPERTIES_POST_TRIGGER_SAMPLES, PICO_SV_SAMPLE_PROPERTIES_TIMEBASE, PICO_SV_SAMPLE_PROPERTIES_NO_OF_CAPTURES, PICO_SV_SAMPLE_PROPERTIES_RESOLUTION, PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED, PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_DOWN_SAMPLE_RATIO, PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_DOWN_SAMPLE_RATIO_MODE, PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_REQUERSTED_NO_OF_SAMPLES, PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_SEGMENT_INDEX_FROM, PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_SEGMENT_INDEX_TO, PICO_SV_SIGNAL_GENERATOR, PICO_SV_SIGNAL_GENERATOR_BUILT_IN, PICO_SV_SIGNAL_GENERATOR_BUILT_IN_WAVE_TYPE, PICO_SV_SIGNAL_GENERATOR_BUILT_IN_START_FREQUENCY, PICO_SV_SIGNAL_GENERATOR_BUILT_IN_STOP_FREQUENCY, PICO_SV_SIGNAL_GENERATOR_BUILT_IN_INCREMENT, PICO_SV_SIGNAL_GENERATOR_BUILT_IN_DWELL_TIME, PICO_SV_SIGNAL_GENERATOR_AWG, PICO_SV_SIGNAL_GENERATOR_AWG_START_DELTA_PHASE, PICO_SV_SIGNAL_GENERATOR_AWG_STOP_DELTA_PHASE, PICO_SV_SIGNAL_GENERATOR_AWG_DELTA_PHASE_INCREMENT, PICO_SV_SIGNAL_GENERATOR_AWG_DWELL_COUNT, PICO_SV_SIGNAL_GENERATOR_AWG_INDEX_MODE, PICO_SV_SIGNAL_GENERATOR_AWG_WAVEFORM_SIZE, PICO_SV_SIGNAL_GENERATOR_ARRAY_OF_AWG_WAVEFORM_VALUES, PICO_SV_SIGNAL_GENERATOR_OFFSET_VOLTAGE, PICO_SV_SIGNAL_GENERATOR_PK_TO_PK, PICO_SV_SIGNAL_GENERATOR_OPERATION, PICO_SV_SIGNAL_GENERATOR_SHOTS, PICO_SV_SIGNAL_GENERATOR_SWEEPS, PICO_SV_SIGNAL_GENERATOR_SWEEP_TYPE, PICO_SV_SIGNAL_GENERATOR_TRIGGER_TYPE, PICO_SV_SIGNAL_GENERATOR_TRIGGER_SOURCE, PICO_SV_SIGNAL_GENERATOR_EXT_IN_THRESHOLD, PICO_SV_ETS, PICO_SV_ETS_STATE, PICO_SV_ETS_CYCLE, PICO_SV_ETS_INTERLEAVE, PICO_SV_ETS_SAMPLE_TIME_PICOSECONDS } PICO_STRING_VALUE; #endif