Skip to content

Scope Capabilities

Derived, dialect-resolved capabilities of a connected oscilloscope (scope.capabilities)

Derived, queryable capabilities for a connected oscilloscope.

Everything here is DERIVED from the per-dialect command tables and token maps in scpi_commands.py (a feature exists iff its command is in the resolved table; token sets come from the maps) plus the model registry for hardware facts the tables cannot express (max_channels). Nothing is guessed: building requires a resolved dialect, which requires a live connection.

ScopeCapabilities dataclass

ScopeCapabilities(dialect: str, scpi_variant: str, model_name: str, max_channels: int, trigger_modes: frozenset, trigger_types: frozenset, trigger_slopes: frozenset, trigger_couplings: frozenset, trigger_sources: frozenset, trigger_level_sources: frozenset, channel_couplings: frozenset, measurement_types: frozenset, has_trigger_holdoff: bool, has_probe_ratio: bool, has_channel_unit: bool, has_math_display: bool, has_screen_dump: bool, has_measurement_statistics: bool)

What the connected scope's dialect + variant + model can express.

Token-set fields hold PUBLIC vocabulary strings; vocabulary enums compare and hash equal to them, so TriggerType.GLIT in caps.trigger_types works.

See Also

  • Oscilloscope - Main oscilloscope control class for SCPI communication
  • Vocabulary - String-compatible enums for token-valued parameters (coupling, trigger mode/slope/source/coupling/type, bandwidth limit, tracking mode) -- enums in, strings out
  • Models - Oscilloscope model capabilities and registry