DewesoftX#

class DewesoftX(dxd_name: str | None = None)[source]#

Bases: DAQDriverBase

Streams live sync and async channels from a running DewesoftX instance over DCOM.

Attributes

ai_channels

Frozen snapshot of configured AI channels, keyed by alias.

ai_hw_timing_config

ao_channels

Frozen snapshot of configured AO channels, keyed by alias.

ao_hw_timing_config

channels

Frozen snapshot of all configured AI/AO/DI/DO channels (excludes relays).

di_channels

Frozen snapshot of configured DI channels, keyed by alias.

di_hw_timing_config

do_channels

Frozen snapshot of configured DO channels, keyed by alias.

do_hw_timing_config

relay_channels

Frozen snapshot of configured relay channels, keyed by alias.

points_in_buffer

Methods

close

Drop the COM references; the configured channels survive, and the next open() rebinds them.

close_relay

Close the relay (connect the circuit).

configure_ai_channel

Deprecated: implement configure_ai_voltage_channel instead.

configure_ai_current_channel

Same binding as voltage: DewesoftX channels carry their own units, so the HAL type only labels the alias.

configure_ai_hw_timing

Require the requested rate to be DewesoftX's own: InstroDAQ derives the batch size and buffer from it.

configure_ai_thermocouple_channel

Same binding as voltage; tc_type and CJC settings are ignored because DewesoftX owns sensor setup.

configure_ai_voltage_channel

Bind an existing DewesoftX channel by name; DewesoftX owns all channel setup.

configure_ao_channel

Deprecated: implement configure_ao_voltage_channel instead.

configure_ao_current_channel

Register an AO current channel.

configure_ao_voltage_channel

Register an AO voltage channel.

configure_di_line_channel

Parse, program, and register a DI line channel.

configure_di_port_channel

Parse, program, and register a DI port channel.

configure_do_line_channel

Parse, program, and register a DO line channel.

configure_do_port_channel

Parse, program, and register a DO port channel.

define_relay_channel

Build a RelayChannel for physical_channel (e.g. "3101" = slot 3 / channel 101).

fetch_analog

Block until samples_per_channel new samples arrive on every sync channel, then drain.

get_actual_sample_rate

The device's rate captured at configure time; None before configure_ai_sample_rate().

open

Attach to the running DewesoftX instance.

open_relay

Open the relay (disconnect the circuit).

read_analog

Drain every new sample from each bound channel.

read_digital_line

Sample a single DI line.

read_digital_port

Sample a multi-line DI port.

start

Listen for a session an operator starts, or with start_storing_session=True start one here.

stop

Leave the running session alone, or with stop_storing_session=True stop it.

write_analog_value

Write value to AO channel.

write_digital_line

Drive a single DO line.

write_digital_port

Drive a multi-line DO port.