--- source_files: - Common/DTS.Common/Constant/DASSpecific/TDAS.cs - Common/DTS.Common/Constant/DASSpecific/SLICE.cs - Common/DTS.Common/Constant/DASSpecific/PowerPRO.cs - Common/DTS.Common/Constant/DASSpecific/SLICE2_TOM.cs - Common/DTS.Common/Constant/DASSpecific/SLICEDB.cs - Common/DTS.Common/Constant/DASSpecific/SLICE2.cs - Common/DTS.Common/Constant/DASSpecific/SLICE1_5.cs - Common/DTS.Common/Constant/DASSpecific/SLICE6DB.cs - Common/DTS.Common/Constant/DASSpecific/SLICE6.cs - Common/DTS.Common/Constant/DASSpecific/SLICE6AIRBR.cs - Common/DTS.Common/Constant/DASSpecific/SLICE6AIRTC.cs - Common/DTS.Common/Constant/DASSpecific/SliceProDB.cs - Common/DTS.Common/Constant/DASSpecific/TSRAIR.cs - Common/DTS.Common/Constant/DASSpecific/SLICE6AIR.cs generated_at: "2026-04-16T03:22:55.770587+00:00" model: "Qwen/Qwen3-Coder-Next-FP8" schema_version: 1 sha256: "4c12caeeb739c46d" --- # DASSpecific Constants Module Documentation ## 1. Purpose This module provides hardware-specific constant definitions and feature-support checks for various Data Acquisition Systems (DAS) in the DTS product line. It centralizes protocol version requirements, hardware capabilities (e.g., maximum anti-aliasing filter rates), and recording/streaming/clock synchronization mode support logic for each DAS model (e.g., SLICE, SLICE6, TSRAIR, PowerPRO). These constants and methods enable higher-level system components to dynamically adapt behavior based on the detected DAS model and its firmware protocol version, ensuring correct operation across a heterogeneous fleet of devices. ## 2. Public Interface ### Constants (All `public const` fields) | Class | Constant | Type | Value | Description | |-------|----------|------|-------|-------------| | `TDAS` | `MaxAAFilterRateHz` | `uint` | `4300` | Maximum anti-aliasing filter rate (Hz) for TDAS hardware. | | `SLICE` | `MaxAAFilterRateHz` | `uint` | `30000` | Maximum anti-aliasing filter rate (Hz) for SLICE hardware. | | `PowerPRO` | `MaxAAFilterRateHz` | `uint` | `20000` | Maximum anti-aliasing filter rate (Hz) for PowerPRO hardware. | | `PowerPRO` | `MIN_PROTOCOL_VER` | `byte` | `1` | Minimum protocol version required for basic functionality. | | `PowerPRO` | `DIAGNOS_SHUNT_DAC` | `byte` | `2` | Protocol version at which shunt DAC diagnostics became available. | | `PowerPRO` | `MIN_PROTOCOL_QUERYMACTABLE` | `byte` | `9` | Protocol version for MAC table query support (firmware B0H3+). | | `PowerPRO` | `MIN_PROTOCOL_MEASUREPOWERPROALLDIAGNOSTICCHANNEL` | `byte` | `12` | Protocol version for measuring all diagnostic channels. | | `SLICEDB` | `MaxAAFilterRateHz` | `uint` | `200000` | Maximum anti-aliasing filter rate (Hz) for SLICEDB hardware. | | `SLICEDB` | `MIN_PROTOCOL_VER` | `byte` | `1` | Minimum protocol version for basic functionality. | | `SLICEDB` | `MIN_PROTOCOL_ARM` | `byte` | `2` | Protocol version for ARM-related features. | | `SLICEDB` | `MIN_PROTOCOL_ENABLEFAULTCHECKING` | `byte` | `2` | Alias of `MIN_PROTOCOL_ARM`; fault checking support. | | `SLICEDB` | `MIN_PROTOCOL_DIAGNOSTICS` | `byte` | `3` | Protocol version for diagnostics support. | | `SLICEDB` | `MIN_PROTOCOL_ONOVERRIDE` | `byte` | `4` | Protocol version for override features. | | `SLICEDB` | `MIN_PROTOCOL_OMAP_GPIO` | `byte` | `4` | Alias of `MIN_PROTOCOL_ONOVERRIDE`. | | `SLICEDB` | `MIN_PROTOCOL_INITHARDWAREINPUTLINES` | `byte` | `4` | Alias of `MIN_PROTOCOL_ONOVERRIDE`. | | `SLICEDB` | `MIN_PROTOCOL_BASECALDATE` | `byte` | `5` | Protocol version for base calibration date support (FB 16049). | | `SLICEDB` | `MIN_PROTOCOL_QUERYMACTABLE` | `byte` | `9` | Protocol version for MAC table query (firmware B0H3+). | | `SLICEDB` | `MIN_PROTOCOL_TILT` | `byte` | `14` | Protocol version for tilt sensor support. | | `SLICE2` | `MaxAAFilterRateHz` | `uint` | `200000` | Maximum anti-aliasing filter rate (Hz) for SLICE2 hardware. | | `SLICE2` | `SLICE1_5_BASETYPE` | `int` | `2` | Base type identifier for SLICE1.5. | | `SLICE2` | `SLICEPRO_DIM_BASETYPE` | `int` | `3` | Base type identifier for SLICE Pro DIM. | | `SLICE2` | `SLICEPRO_TOM_BASETYPE` | `int` | `5` | Base type identifier for SLICE Pro TOM. | | `SLICE2` | `MIN_PROTOCOL_VER` | `byte` | `128` | Minimum protocol version for SLICE2 (note: unusually high, likely indicates Gen2+). | | `SLICE2` | `FILE_DATA` | `int` | `133` | Protocol feature ID for file data support. | | `SLICE2` | `MULTIPLE_EVENTS` | `int` | `134` | Protocol feature ID for multiple events. | | `SLICE2` | `STACK_SENSORS` | `int` | `136` | Protocol feature ID for stacked sensors. | | `SLICE2` | `STACK_FIRMWARE_UPDATE` | `int` | `137` | Protocol feature ID for stacked firmware update. | | `SLICE2` | `DIAGNOSTIC_TWO_VOLT_EXCITATION` | `int` | `138` | Protocol feature ID for 2V excitation diagnostics. | | `SLICE2` | `QUERY_ARM_AND_TRIGGER_STATUS_TIME_LEFT_IN_ARM` | `int` | `139` | Protocol feature ID for querying arm status/time-left. | | `SLICE2` | `MIN_PROTOCOL_VER_GEN3` | `byte` | `140` | Minimum protocol version for Gen3 features. | | `SLICE2` | `SLICE2_ONE_WIRE_ID` | `int` | `142` | Protocol feature ID for one-wire ID. | | `SLICE2` | `EVENT_ARM_ATTEMPTS` | `int` | `145` | Protocol feature ID for event arm attempts. | | `SLICE2` | `MEASURE_INTERNAL_OFFSET` | `int` | `149` | Protocol feature ID for internal offset measurement. | | `SLICE2` | `START_REC_DELAY_IN_SECONDS` | `int` | `150` | Protocol feature ID for delayed recording start. | | `SLICE2` | `START_REALTIME_STREAM` | `int` | `152` | Protocol feature ID for starting real-time streaming. | | `SLICE2` | `HALF_BRIDGE_SIG_PLUS_SUPPORT` | `int` | `154` | Protocol feature ID for half-bridge signal+ support. | | `SLICE1_5` | `MaxAAFilterRateHz` | `uint` | `40000` | Maximum anti-aliasing filter rate (Hz) for SLICE1.5 hardware. | | `SLICE1_5` | `MIN_PROTOCOL_VER` | `byte` | `1` | Minimum protocol version for basic functionality. | | `SLICE1_5` | `QUERY_ARM_AND_TRIGGER_STATUS_TIME_LEFT_IN_ARM` | `int` | `2` | Protocol feature ID for arm status/time-left. | | `SLICE1_5` | `IGNORE_SHORTED_START_EVENT` | `int` | `4` | Protocol feature ID for ignoring shorted start events. | | `SLICE1_5` | `START_REC_DELAY_IN_SECOND` | `int` | `5` | Protocol feature ID for delayed recording start. | | `SLICE1_5` | `MEASURE_INTERNAL_OFFSET` | `int` | `6` | Protocol feature ID for internal offset measurement. | | `SLICE1_5` | `START_REALTIME_STREAM` | `int` | `7` | Protocol feature ID for starting real-time streaming. | | `SLICE1_5` | `BASE_PLUS_MIN_MULTIEVENT_HYBRID_PROTOCOL` | `int` | `8` | Minimum protocol version for `MultipleEventHybridRecorder` mode support. | | `SLICE6DB` | `MaxAAFilterRateHz` | `uint` | `200000` | Maximum anti-aliasing filter rate (Hz) for SLICE6DB hardware. | | `SLICE6DB` | `MIN_PROTOCOL_VER` | `byte` | `1` | Minimum protocol version for basic functionality. | | `SLICE6DB` | `MIN_PROTOCOL_QUERYTEMPLOGFILE` | `byte` | `8` | Protocol version for temperature log file query. | | `SLICE6DB` | `MIN_PROTOCOL_QUERYMACTABLE` | `byte` | `9` | Protocol version for MAC table query (firmware B0H3+). | | `SLICE6DB` | `MIN_PROTOCOL_TILT` | `byte` | `14` | Protocol version for tilt sensor support. | | `SLICE6DB` | `CLOCKSYNCPROFILE` | `int` | `18` | Minimum protocol version for clock sync profiles (e.g., E2E). | | `SLICE6DB` | `PTP_DOMAIN_ID_VER` | `int` | `18` | Minimum protocol version for PTP Domain ID (per 30472). | | `SLICE6` | `MaxAAFilterRateHz` | `uint` | `20000` | Maximum anti-aliasing filter rate (Hz) for SLICE6 hardware. | | `SLICE6` | `MIN_PROTOCOL_VER` | `int` | `1` | Minimum protocol version for basic functionality. | | `SLICE6` | `DIAGNOS_SHUNT_DAC` | `int` | `2` | Protocol feature ID for shunt DAC diagnostics. | | `SLICE6` | `START_REC_DELAY_IN_SECONDS` | `int` | `3` | Protocol feature ID for delayed recording start. | | `SLICE6` | `IN_SLICE_TILT_SENSOR_ADC_PRE` | `int` | `4` | Protocol feature ID for in-slice tilt sensor ADC pre-processing. | | `SLICE6` | `STACK_SENSORS` | `int` | `5` | Protocol feature ID for stacked sensors. | | `SLICE6` | `START_REALTIME_STREAM` | `int` | `11` | Protocol feature ID for starting real-time streaming. | | `SLICE6` | `UDP_REALTIME_STREAM` | `int` | `14` | Protocol feature ID for UDP real-time streaming. | | `SLICE6` | `CLOCKSYNCPROFILE` | `int` | `21` | Minimum protocol version for clock sync profiles (e.g., E2E). | | `SLICE6` | `PTP_DOMAIN_ID_VER` | `int` | `21` | Minimum protocol version for PTP Domain ID (per 30472). | | `SLICE6AIRBR` | `MIN_PROTOCOL_VER` | `int` | `1` | Minimum protocol version for basic functionality. | | `SLICE6AIRBR` | `ADC_SAMPLES_PER_PACKET_VER` | `int` | `47` | Protocol version for configurable ADC samples per packet. | | `SLICE6AIRBR` | `UDPALIGNONPPS_PROTOCOL` | `int` | `51` | Protocol version for UDP alignment on PPS. | | `SLICE6AIRBR` | `MaxAAFilterRateHz` | `uint` | `50000` | Maximum anti-aliasing filter rate (Hz) for SLICE6AIRBR hardware. | | `SLICE6AIR` | `IENA_PTYPE_STREAM_MIN_PROTOCOL` | `uint` | `39` | Minimum protocol version for IENA PTYPE stream support. | | `SLICE6AIR` | `UART_STREAM_MIN_PROTOCOL` | `uint` | `41` | Minimum protocol version for UART stream support. | | `SLICE6AIR` | `MaxAAFilterRateHz` | `uint` | `50000` | Maximum anti-aliasing filter rate (Hz) for SLICE6AIR hardware. | | `SLICE6AIR` | `MaxSampleRateHz` | `uint` | `400000` | Maximum sample rate (Hz) for SLICE6AIR (non-UART modes). | | `SLICE6AIR` | `MaxSampleRateHz_OBRDDR` | `uint` | `uint.MaxValue` | Maximum sample rate (Hz) for SLICE6AIR Ethernet Recorder (OBRDDR). | | `SLICE6AIR` | `UARTBitsPerSample` | `uint` | `96` | Number of bits per sample for UART streaming. | | `SLICE6AIR` | `MIN_PROTOCOL_VER` | `int` | `1` | Minimum protocol version for basic functionality. | | `SLICE6AIR` | `UDP_REALTIME_STREAM` | `int` | `1` | Protocol feature ID for UDP real-time streaming (same as `MIN_PROTOCOL_VER`). | | `SLICE6AIR` | `SET_DSP_FILTER_SETTINGS` | `int` | `28` | Protocol feature ID for DSP filter settings. | | `SLICE6AIR` | `RECORD_AND_STREAM_SUBSAMPLE` | `int` | `29` | Protocol feature ID for record-and-stream subsampling. | | `SLICE6AIR` | `UART_MULTIPLE_EVENT_MIN_PROTOCOL` | `int` | `45` | Minimum protocol version for UART + multiple event modes. | | `SLICE6AIR` | `RECORD_ON_BOOT_PROTOCOL` | `int` | `46` | Protocol feature ID for record-on-boot. | | `SLICE6AIR` | `RECORD_ON_BOOT_PROTOCOL_S6A_ETHERNETRECORDER` | `int` | `7` | Protocol feature ID for record-on-boot on S6A Ethernet Recorder. | | `SLICE6AIR` | `CONTINUOUS_MODE_PROTOCOL_S6A_EDR` | `int` | `5` | Protocol feature ID for continuous mode on S6A EDR. | | `SLICE6AIR` | `MULTIPLE_UDP_ADDRESSES_S6A_ETHERNETRECORDER` | `int` | `7` | Protocol feature ID for multiple UDP addresses on S6A EDR. | | `SLICE6AIR` | `AUTOARM_RECORD_DELAY_PROTOCOL` | `int` | `51` | Protocol feature ID for auto-arm with record delay. | | `SLICE6AIR` | `AUTOARM_RECORD_DELAY_PROTOCOL_S6A_ETHERNETRECORDER` | `int` | `6` | Protocol feature ID for auto-arm with record delay on S6A EDR. | | `SLICE6AIR` | `UDPALIGNONPPS_PROTOCOL` | `int` | `49` | Protocol feature ID for UDP alignment on PPS. | | `SLICE6AIR` | `UART_CHANNEL_STREAMING` | `int` | `53` | Protocol version for UART channel streaming. | | `SLICE6AIR` | `REMOVE_LEAP_SECONDS_VER` | `int` | `42` | Protocol version for leap second removal support. | | `SLICE6AIR` | `ADC_SAMPLES_PER_PACKET_VER` | `int` | `43` | Protocol version for configurable ADC samples per packet. | | `SLICE6AIR` | `AC_COUPLER_ENABLE` | `int` | `36` | Protocol version for AC coupler enable. | | `SLICE6AIR` | `PPS_OUT_CLOCKS` | `int` | `39` | Protocol version for PPS OUT clock types. | | `TSRAIR` | `MaxAAFilterRateHz` | `uint` | `200000` | Maximum anti-aliasing filter rate (Hz) for TSRAIR hardware. | | `TSRAIR` | `MIN_PROTOCOL_VER` | `byte` | `1` | Minimum protocol version for basic functionality. | | `TSRAIR` | `VOLTAGE_INSERTION` | `int` | `2` | Protocol feature ID for voltage insertion. | | `TSRAIR` | `START_REC_DELAY_IN_SECONDS` | `int` | `3` | Protocol feature ID for delayed recording start. | | `TSRAIR` | `STACK_SENSORS` | `int` | `5` | Protocol feature ID for stacked sensors. | | `TSRAIR` | `WAKEUP_MOTION_TIMEOUT` | `int` | `10` | Protocol feature ID for wakeup motion timeout. | | `TSRAIR` | `IRIG_GPS_PPSIN_SYNC` | `int` | `25` | Protocol version for IRIG/GPS/PPS input sync support. | | `TSRAIR` | `DISABLE_STREAMING_FEATURE` | `int` | `25` | Protocol feature ID for disabling streaming (same as `IRIG_GPS_PPSIN_SYNC`). | | `TSRAIR` | `TSRAIR_MIN_PRE_TRIGGER_SAMPLES` | `int` | `256` | Minimum pre-trigger samples for TSRAIR. | | `TSRAIR` | `TSRAIR_MAX_PRE_TRIGGER_SAMPLES` | `int` | `512` | Maximum pre-trigger samples for TSRAIR. | | `TSRAIR` | `EXTENDED_FAULTS_VER` | `int` | `27` | Protocol version for extended faults. | | `TSRAIR` | `ADC_SAMPLES_PER_PACKET_VER` | `int` | `29` | Protocol version for configurable ADC samples per packet. | | `TSRAIR` | `PROTOCOL_VERSION_CIRCULAR_UART` | `int` | `29` | Protocol version for circular buffer + UART modes. | | `TSRAIR` | `PROTOCOL_VERSION_CIRCULAR` | `int` | `int.MaxValue` | Protocol version for circular buffer modes (always supported). | | `TSRAIR` | `PROTOCOL_VERSION_RECORDER_UART` | `int` | `30` | Protocol version for recorder + UART modes. | | `TSRAIR` | `PROTOCOL_VERSION_RECORDER` | `int` | `int.MaxValue` | Protocol version for recorder modes (always supported). | | `TSRAIR` | `PROTOCOL_VERSION_SCHEDULED_EVENTCOUNT` | `int` | `35` | Protocol version for scheduled event count. | | `SliceProDB` | `MINIMUM_VALID_INPUT_THRESHOLD_LOW` | `double` | `30` | Lower bound for valid input threshold setting. | | `SliceProDB` | `MINIMUM_VALID_INPUT_THRESHOLD_HIGH` | `double