Adenium Satellite#

Name

Adenium

Description

Adenium Beam Telescope

Category

Readout Systems

Language

C++

Website

beam-telescopes/adenium

Description#

Adenium is beam telescope at the DESY II test beam facility (doi:10.1016/j.nima.2018.11.133). Details about the telescope can be found in the reference paper (doi:10.1088/1748-0221/18/06/P06025).

The satellite connects to the telescope and transmits the data over the network. If the EudaqNativeWriter is used, the data can be decoded with the event decoder in the EUDAQ2 repository.

Building#

Building requires:

  • CMake

  • pkg-config

  • msgpack-cxx

  • Constellation v0.6 or newer

If Constellation is not installed in a default system directory such as /usr/local, the directory needs to be exported in order to be found by pkg-config:

export CNSTLN_PREFIX="/opt/constellation"
export PKG_CONFIG_PATH="$CNSTLN_PREFIX/share/pkgconfig:$CNSTLN_PREFIX/lib64/pkgconfig:$CNSTLN_PREFIX/lib/x86_64-linux-gnu/pkgconfig"

Then, the Adenium satellite can be built with CMake:

mkdir build && cd build
cmake .. -DADENIUM_BUILD_CNSTLN_SATELLITE=ON
make -j$(nproc)
make install

Hint

To disable building the EUDAQ Producer, add -DADENIUM_BUILD_EUDAQ_MODULE=OFF to the CMake call.

Parameters#

None

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

-