EUDET Telescope Satellite#

Name

EUDET Telescope

Subtitle

Constellation Satellite for controlling EUDET-type Beam Telescopes

Category

Readout Systems

Language

C++

Website

constellation/satellites/eudet-telescope

Description#

This is a Constellation satellite to control the NI LabView data acquisition system of the EUDET-type beam telescopes equipped with MIMOSA26 sensors. In absence of documentation for the NI LabView system, this software is a direct port of the original EUDAQ2 Producer, including its peculiarities such as error code handling and configuration formatting.

Parameters#

The following parameters are read and interpreted by this satellite. Parameters without a default value are required.

Parameter

Description

Type

Default Value

ip_address

IP address at which the NI LabView software is listening for commands

String

-

config_port

Port under which the NI LabView software receives commands

Unsigned integer

49248

data_port

Port at which the NI LabView software provides data

Unsigned integer

49250

The following parameters were not documented in the original code and their exact meaning is unclear.

Parameter

Type

Default Value

trigger_type

Unsigned Integer

1

det

Unsigned Integer

255

ni_version

Unsigned Integer

1

fpga_download

Unsigned Integer

1

num_boards

Unsigned Integer

6

mimosa_enabled

Bool array

{true, true, true, true, true, true}

Configuration Example#

An example configuration for this satellite which could be dropped into a Constellation configuration as a starting point

[satellites.EudetTelescope.Datura]
ip_address = "192.168.22.2"

Metrics#

The following metrics are distributed by this satellite and can be subscribed to.

Metric

Description

Value Type

Metric Type

Interval

TRIGGER_ID

Current trigger ID received from the NI LabView DAQ system

unsigned integer

LAST_VALUE

1s

Framework Parameters#

This satellite inherits the following framework parameters from its base classes:

Parameters inherited from TransmitterSatellite#

Parameters to control data transmission in the _data section:

Parameter

Type

Description

Default Value

bor_timeout

Unsigned integer

Timeout in seconds to send the BOR message. The satellite will attempt for this interval to send the message and goes into ERROR state if it fails to do so. A possible reason for failure is that no receiver satellite connected to this satellite and is receiving data.

10

eor_timeout

Unsigned integer

Timeout in seconds to send the EOR message. The satellite will attempt for this interval to send the message and goes into ERROR state if it fails to do so.

10

data_timeout

Unsigned integer

Timeout in seconds to send the data message. The satellite will attempt for this interval to send the message and goes into ERROR state if it fails to do so.

10

payload_threshold

Unsigned integer

Threshold for sending data messages in KiB. The satellite will only send queued data records after the combined payload size of the data records has reached this threshold.

128

queue_size

Unsigned integer

Size of the queue for the data records. Small values might lead to performance issues, large values lead to larger memory usage.

32768

license

String

License this data is recorded under. Defaults to the Open Data Commons Attribution License. This information will be added to the run metadata.

ODC-By-1.0

Parameters inherited from Satellite#

Autonomous Operation#

Parameters to control autonomy in the _autonomy section:

Parameter

Type

Description

Default Value

role

Role name

Role this satellite should take in the Constellation. Accepted values are ESSENTIAL, DYNAMIC, TRANSIENT and NONE.

DYNAMIC

max_heartbeat_interval

Unsigned integer

Maximum interval in seconds between heartbeats to be sent to other Constellation components. The time between heartbeat is adjusted automatically according to the number of nodes in the Constellation but will never exceed this value.

30

Conditional Transitions#

Parameters to control conditional transitions in the _conditions section:

Parameter

Type

Description

Default Value

require_initializing_after

List of strings

List of canonical names of remote satellites for conditional transitioning in initializing state

-

require_launching_after

List of strings

List of canonical names of remote satellites for conditional transitioning in launching state

-

require_landing_after

List of strings

List of canonical names of remote satellites for conditional transitioning in landing state

-

require_starting_after

List of strings

List of canonical names of remote satellites for conditional transitioning in starting state

-

require_stopping_after

List of strings

List of canonical names of remote satellites for conditional transitioning in stopping state

-

transition_timeout

Unsigned integer

Timeout in seconds to wait for all conditions to be satisfied for conditional transitioning

30

Framework Metrics#

This satellite inherits the following framework metrics from its base classes:

Metrics inherited from TransmitterSatellite#

Metric

Description

Value Type

Interval

TX_BYTES

Amount of bytes transmitted during current run

Integer

10s

TX_BLOCKS

Number of data blocks transmitted during current run

Integer

10s

TX_RECORDS

Number of data records transmitted during current run

Integer

10s

Metrics inherited from Satellite#

Metric

Description

Value Type

Interval

RUN_ID

Current run identifier. Updated whenever it changes.

String

-