Support MES Model Examiner® (MXAM)

What is MXAM?


MES Model Examiner® (MXAM) offers fast and reliable guideline compliance verification for Simulink®, Stateflow®, Embedded Coder®, TargetLink®, ASCET®, and Enterprise Architect® models, as well as Excel® data, using general and company-specific modeling guidelines and data rules.

Certified by TÜV SÜD for IEC 61508, ISO 25119, and ISO 26262

TÜV Certificate

What's new?

Highlights in MES Model Examiner® (MXAM) v.5.2

Comprehensive wizard for custom guideline selection:
The new guideline document wizard provides assistance when selecting guidelines for a custom guideline document. Guidelines are filtered by project specific characteristics and grouped by the topics of their objective. Recommended guidelines are selected by default, whereas additional guidelines can be added or removed by custom requirement.

Improvements in the highlighting of active view filters.

Consistency validation for guidelines included in multiple documents selected in the same project.

► Read about all new features in the Release Notes

System requirements

The following system requirements must be in place to use MXAM v.5.2:

  • Windows Vista, Windows 7, Windows 8, Windows 10 (64-bit versions)
  • Web service Port 10117 (default) must be accessible and can be changed in the tool preferences.
  • System requirements when using MXAM with MATLAB®/Simulink®/Stateflow®, and TargetLink®:
    • MATLAB® version see table below
    • TargetLink® (base suite) version see table below
    • Port 5564 (default) must be accessible
  • System requirements when using MXAM with ASCET: ASCET 6.1 to 6.4.3
  • System requirements when using MXAM with EXCEL: Excel 2003 and higher

Compatibility of each MXAM release with MATLAB and TargetLink releases

MXAM Release MATLAB Release TargetLink Release
5.2 R2011b - R2018b TL 3.1 - TL 4.3
5.1 R2011b - R2018b TL 3.1 - TL 4.3
5.0 R2011b - R2018a TL 3.1 - TL 4.3
4.7 R2009b - R2017b TL 3.1 - TL 4.3
4.6 R2009b - R2017b TL 3.1 - TL 4.2
4.5 R2009b - R2017a TL 3.1 - TL 4.2
4.4 R2009b - R2017a TL 3.1 - TL 4.2
4.3 R2009b - R2016b TL 3.1 - TL 4.2
4.2 R2009b - R2016b TL 3.1 - TL 4.2
4.1 R2007b - R2016b TL 2.2 - TL 4.1
4.0 R2007b - R2016a TL 2.2 - TL 4.1
3.9 R2007b - R2015b TL 2.2 - TL 4.1
3.8 and 1.9.0 R2007b - R2015b TL 2.2 - TL 4.1


Update to the latest version

  • If you added MXAM folders permanently to the MATLAB path, please remove all of these folders from the path.
  • If you installed the old version in a folder with a version postfix (e.g. x:\project\matlab\mxam_x_x), you can keep that directory as a backup.
  • If you installed without a version postfix, you could rename the old installation directory to one with a version postfix as a backup.

Update from MXAM 1 to a current version of MXAM

A migration kit to migrate customer-specific checksets and checks is available upon request.
Please contact


Manual installation

  • Installer: Install MXAM by executing the setup file (.exe) and follow the setup instructions.
    • The startup of the installation process might take a while depending on the security settings of the client machine.
    • Installation to a write-protected directory: Right click the setup file and execute as administrator.
  • Zip archive: Unzip the archive into any directory

Automatic headless installation

  • Run the MXAM installation once on a machine and save your automatic installation data in the Finish Panel to auto-install.xml.
    With this data, you will be able to run the same installation on another similar machine.
  • Configure the auto-install.xml
  • Run the automatic installation: >>[installer-name].exe [ABSOLUTE-PATH/auto-install.xml]

Quick start

Starting MXAM

  • For MATLAB platform: Open MATLAB, navigate to the MXAM installation directory, and execute >>mxam
  • For other platforms: Start MXAM using the program shortcut or go to the MXAM installation directory and execute mxam.exe

Starting an analysis

For MATLAB platform:

  • Open a model in MATLAB
  • Press "Analyze" in MXAM
  • Select the model in the artifact dialog
  • Press "Finish"


  • Press "Analyze" in MXAM
  • Press "Open ASCET 6" in the artifact dialog if it is not yet open
  • Press "Refresh" to fetch models from the database
  • Press "Finish"

For Others:

  • In the Project perspective, press "Add..." in the Artifact Section to add an artifact
  • Select the artifact and press "Finish"
  • Press "Analyze"


  • Go to the "Project Guidelines" perspective to see which guidelines will be checked during the analysis.
  • To see the pool of all available guidelines, go to the "Library Browser" perspective and select the "Guidelines" view.


If you have any suggestions to help us improve the MES Model Examiner®, please do not hesitate to contact us:

User Guide

MXAM User Guide

The MES User Guide presents clear instructions on how to work with the MES Model Examiner® (MXAM). It provides users with information about getting started and working with MXAM.
You can easily call the User Guide by clicking on "Help > Help Contents" in the menu (see image).

Release Notes - V5.2.0 01-04-2019

Tool Framework

Wizard for the creation of guideline documents

  • A wizard provides help for the selection of guidelines in new guideline documents.
  • Guidelines are grouped by aspects which will result in corresponding chapters of the document.
  • Guidelines are filtered based on development project specific configurations:
    • used MATLAB toolboxes
    • used code generator
    • ISO 26262 safety requirements
  • Guidelines recommended by MES are selected by default.


  • Increased usability of findings view for large reports.
  • Increased user awareness for active view filters with highlights.
  • Hide empty groups of markers in validation view. (#6438)
  • Added details for applied annotations to the report result which can be queried by MATLAB API.
  • Use the same filtering and advanced search capabilities in the findings view as in other views.
  • Added validation for guidelines that are included in multiple guideline documents selected for the active project.
  • Changed default report export format to HTML.
  • Separated tool and view entries in the main menu.
  • Added a "Show head version only" filter to ease the guideline documents selection in the project settings.
  • Moved navigation elements in HTML and PDF reports to ease navigation within the report.
  • Remember recent path in the artifact definition selection dialog.
  • Improved user interface layout for large library lists in new item wizards. (#6202)

Bug fixes

  • Remove stale report validation markers when a report gets removed. (#6409)
  • Fixed update of markers shown in validation view when different reports get selected. (#6409)
  • Check user access rights for drag&drop in ignore list editor before moving rules. (#5502)
  • Enable Sorting in dialog for adding shared parameters. (#6371)
  • Prevent closing dialogs when pressing enter key while editing filter texts. (#6574)
  • Fixed a problem with a relative path given for the annotations located next to artifact if the target folder does not exist. (#6683)

Guidelines, Checks, and Documents

mcheck_mes_slsf_9103: Exclude specific library blocks from the analysis

The check has been equipped with a second check parameter 'MES.mes_slsf_9103.IgnoredLibraries' that enables the user to ignore library blocks additionally to project-wide ignored libraries.

mcheck_db_0141: Allow blocks in feedback loops

The check has a new check parameter 'MAAB.db_0141.AllowedBlocksInLoops' that allows you to specify blocks that may be orientated from right to left within a feedback loop. These blocks can be identified by particular blocktype-masktype combinations, or a single * as a wildcard character can be used.


  • mcheck_jc_0451: The check now also takes into account expressions that are explicitly converted to an unsigned integer type and variables whose data type is inherited from the chart definition. Moreover, multiplications of uint8/16/32-variables by (-1) are also reported. (#6484)
  • mcheck_ds_0070: In accordance with the dSPACE guideline TL_RULE_STATEFLOW_EMBEDDED_MATLAB, the check now also verifies the action language of the chart to be 'C'. (#6512)
  • mcheck_misra_slsf_031_a: The check parameter 'MISRA_SL_SF.misra_slsf_031_a.AllowedBlocksInLoops' now additionally allows the specification of masktypes of blocks to be ignored within feedback loops. (#6474)
  • mcheck_misra_slsf_006_b: For Discrete Filter blocks the Simulink parameter 'InitialDenominatorStates' can not be modified via GUI, if the property 'Filter Structure' is 'Direct form II'. Hence, these parameters are no longer considered by the check. (#6548)
  • mcheck_misra_slsf_026_c: The check description was changed: The third pass-fail criterion 'Also use prefix or suffix if the port block name would be the same as any other block name, i.e. any block has the same name as a signal connected to a port' was removed since it is not part of the respective guideline. (#5938)
  • mcheck_misra_tl_3_2: The check description was improved in order to clarify the check functionality concerning Look-Up Table blocks. (#6537)

Bug fixes

  • mcheck_misra_slsf_031_a: In some cases the check gave redundant failed findings for left oriented destination blocks. Guideline violations are now only reported once per block. (#6657)
  • mcheck_na_0030: The check gave false failed findings for bus output signals of Bus Selectors. Moreover, for certain modeling patterns the check did not properly assess whether a signal was a bus signal. Both issues have been fixed. (#5941)
  • mcheck_ds_0093: The guideline TL_RULE_GENERAL_DIAGNOSTICS has a guideline parameter with different expected values for the parameter 'Underspecified initialization detection' depending on the used TargetLink version. When there was no TargetLink installation, the check reported this parameter as unknown. This issue was corrected and now the check gives a warning indicating the user should replace the expected value of the guideline parameter directly with the desired value. (#6443)
  • mcheck_ds_0105: The check aborted if a TargetLink Bus Inport block was used as an input signal source for the Selector block. This issue was fixed. (#6459)
  • mcheck_na_0009: The check gave an incorrect failed finding for signals with a propagated label, if the signals were located within a child subsystem of a library block. Now, those signals are passed. (#5939)
  • mcheck_na_0009: If a Bus Selector block had the option 'OutputAsBus' selected and if its output signal had no propagated signal name, the check gave an incorrect failed finding for this output signal. Now, those bus signals no longer get a failed finding, because they are new signals and also the signal propagation is not available. Exception: In MATLAB R2011b, the signal propagation is available in that case and hence, the check now gives a failed finding if the new bus signal is not named but has a propagated label. (#5940)
  • mcheck_mes_slsf_9003: In some cases the repair action returned a wrong finding message. This has been corrected. (#6513)
  • mcheck_jc_0451: In specific cases the check did not properly process white spaces in expressions. Moreover, some subtractions were incorrectly reported as failed. The issues were fixed. (#6484)
  • mcheck_misra_slsf_026_b: The check aborted if it was executed on a library model. This was fixed. (#6518)
  • mcheck_mes_slsf_9101: The check parameter 'MES.mes_slsf_9101.CheckHiddenNames' did not work correctly when set to false and the check analyzed blocks with the option 'ShowName' = 'off'. This issue was fixed. (#6533)
  • mcheck_db_0110: The bit mask properties of Bitwise Operator blocks were always analyzed. Now, the bit mask no longer gets a failed finding if it is not used. (#6548)