SCODE-CONGRA – Understand systems of equations and convert into code

Thanks to ETAS’s SCODE-CONGRA (CONstraint GRAphs) software, function developers can describe control systems in exact, easy-to-understand mathematical terms and graphically visualize the results. The description of system behavior is input textually as a formula via the editor or else graphically. Rule violations, inconsistencies, algebraic loops, and other important characteristics of the system are displayed precisely in the graph, and the user is offered options and functions to correct these “errors in the system” immediately.

SCODE-CONGRA - Software for describing control systems

Effects of changes in the system are shown in displays that are very easy to grasp. The ability to experiment by modifying the individual components facilitates successive approximation to the desired system. This enables users to quickly try out and evaluate different variations.

SCODE-CONGRA is the first ever tool to provide a model-centered approach that is fully based on exact mathematical descriptions. This enables function developers to simulate systems at an early stage and to discover and eliminate weaknesses with the support of the tool. Since it uses the same model for all operating states and automatically generates program code (M file, C code, ESDL), the tool achieves extremely high levels of reusability.

Meanwhile, SCODE-CONGRA provides calibration engineers with very good pre-calibrated parameters as well as a display of the system’s sensitivity at relevant operating points – for example, as part of the documentation if the calibration engineer does not use SCODE-CONGRA. This allows the engineer to focus on the important parts of the system and optimize the pre-calibrated parameters in real operation.

Generating the various artifacts for further processing

SCODE-CONGRA automatically generates artifacts (ESDL-Code, Matlab®/Simulink® M Files, documents with pre-calibrated parameters) for follow-up processes and tools. This increases the efficiency and security of cooperation work.


  • Behavior description of a physical system
  • Automatic generation of M code for simulation and C code for the ECU
  • Exchange of information among function developers as well as between function developers, software developers, and calibration engineers

Fields of application

  • Powertrain (IC engine and electric motor), chassis, body electronics, ADAS (Advanced Driver Assistance Systems)


  • Mathematical formulas can be used as the basis for automated development (formula translated into C code)
  • Easy visualization and documentation of complex mathematical relationships
  • Easy integration into an existing development environment thanks to Eclipse interfaces
  • Automatic generation of work results for further processing in existing tool chains
  • Transparent display of all information across specialist roles (function developers, software developers, calibration engineers, system architects, etc.) and tools
  • Efficient, comprehensive reusability of the description of the physical system


  • Visual displays for recognition of system relationships
  • Analyzing whether the system is over- or under-defined
  • Testing the consistency of the system
  • Identifying errors or weaknesses in the system
  • Carrying out sensitivity analyses for pre-calibration and as documentation for calibration engineers
  • Describing the physical system independently of the signal trace, making it possible to reuse it multiple times, as well as to use it both for closed-loop control and for the environment model

Input parameters:

  • Physical formulas (e.g. temperature behavior, fluid mechanics) from the literature or other sources that describe the overall system

Output parameters:

  • System descriptions based on the physical formulas as an undirected or directed graph
  • Program code (Matlab®/Simulink® M Files and Simulink blocks, C code fragments, ASCET ESDL code, ASCET AMD code, FMI)