Euler Support Package
The Euler support package enables Engee to work with the Euler solver via a client-server DLL that runs in the context of the Euler solver and exchanges signals with Engee.
The package runs on top of the subsystem Engee.Integrations.
Ports are used by default:
-
Reception of signals in Euler: 7489
-
Transmission of signals from Euler: 7490
Requirements
-
The subsystem is installed and running Engee.Integrations.
-
The Euler solver is installed.
-
Ports 7489 and 7490 are available locally (not occupied by other applications, allowed by OS/Firewall rules).
-
The settings.cfg configuration is located in the Euler project folder (next to the open .elr project file); the integration DLL library can be located in any folder and is connected to Euler using the specified path.
| The settings.cfg file should be in the same folder as the open Euler (.elr) project. Otherwise, Euler will not be able to read the configuration. |
Quick start
-
In Engee add a block to the canvas hardware-euler/euler-cosimulation.adoc and generate the settings.cfg file with the signal parameters — see Configuration settings.cfg and Example settings.cfg below.
-
Place settings.cfg in the folder where the Euler (.elr) open project is located.
-
In Euler, switch to "Edit Project" mode in the top menu.
-
In the right object selection window:
-
Select the sensor object:

-
Click "Create an object"

-
In the pop-up window, select the object "Engee Model":

-
-
In the window that appears, match the input and output signals of Engee to the corresponding sensors (sensor) in Euler by the names specified in settings.cfg.

sensor type objects in Euler are designed to obtain numerical information about the movement of a mechanical model. Each sensor returns a real value with a physical dimension that depends on the method of its creation.
As part of the Engee ↔ Euler simulation, sensors are used as signal anchor points: input signals from Engee and output values from Euler are connected precisely through sensor objects. For more information about the sensors in Euler, see the official documentation on link.
-
In the same window, set the basic parameters of the Engee object.:
-
Specify a custom object name (for example, engee_connector);
-
Set the path to the integration DLL;
-
Check the number of input and output signals (taken from the settings.cfg file);
-
Specify the calculation step of the Euler model.

-
-
Assign the input and output signals of Engee to the corresponding sensors (sensor) in Euler by selecting sensors from the list:

As a result, all the signals will be assigned to the corresponding sensors.:

-
Next, open "Text Editor"[1]:

and check that the connector object between Engee and Euler has appeared in the project code.:

-
In Euler switch to * "Project Research" mode*:

-
Run the model in Engee and wait for the simulation to start. A ready-to-simulate message should appear in the Engee client program.Integration.
-
After that, in Euler, click the "Motion dynamics calculation" button
. -
Upon completion of the calculation, click "Reset to the initial state" to free up simulation resources and restart the model.:

Configuration settings.cfg
The settings.cfg file describes the model and composition of the signals exchanged between Engee and Euler: names, quantities, model parameters, and logging mode.
MODEL_NAME OscillatorExample
INPUT_SIGNAL_COUNT 3
OUTPUT_SIGNAL_COUNT 3
MODEL_PARAM_COUNT 3
INPUT_SIGNAL_NAMES dX dY dZ
OUTPUT_SIGNAL_NAMES Fx Fy Fz
MODEL_PARAM_NAMES Cx Cy Cz
INIT_MODEL_PARAM 2000 2000 2000
CONTINUOUS_STATE_NUM_COUNT 0
DISCRETE_STATE_NUM_COUNT 0
DIAGNOSTIC 1
| The INIT_MODEL_PARAM, CONTINUOUS_STATE_NUM_COUNT and DISCRETE_STATE_NUM_COUNT parameters are reserved and will not be used in the future. |
Logging
The DIAGNOSTIC parameter controls the recording of logs to a file engee_logs.txt * (located next to *settings.cfg).
-
DIAGNOSTIC 1 — logging is enabled.
-
DIAGNOSTIC 0 — logging is disabled.
[2025-12-07 22:12:54] Euler model time: 0.053750
[2025-12-07 22:12:54] {docs_engee} model time: 0.054000
[2025-12-07 22:12:54] Received from {docs_engee}, signal dX: 0.400000
[2025-12-07 22:12:54] Received from {docs_engee}, signal dY: 0.300000
[2025-12-07 22:12:54] Received from {docs_engee}, signal dZ: 0.500000
[2025-12-07 22:12:54] Send from Euler, signal Fx: 0.305510
[2025-12-07 22:12:54] Send from Euler, signal Fy: 0.104000
[2025-12-07 22:12:54] Send from Euler, signal Fz: 0.524999
Important
For the DLL to work, it is necessary to synchronize the moment of the start of integration into Euler (with a given step) with the moment of initiation of signal transmission from Engee.
| Launch the model in Engee*earlier* than integration in Euler. The integration process in Euler must be started no later than 30 seconds after the model starts in Engee. |