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.
What's New?
Highlights in latest versions of MES Model Examiner® (MXAM) v.9.1
Automatic Validation of the Model Before Analysis
In order to make sure that your model and setup is ready for a static analysis, MXAM now automatically pre-validates the Simulink® model.
Integrated Support for Model Variants
MXAM further supports the use of Variant blocks. The scope of the analysis can be configured by a global parameter to include either only active variants or all variants. This parameter is applied to all checks.
Extended Support for Assisted and Automated Safe Repair of Selected Findings
Additional Checks for MAB 5.0 Guidelines
Improved Support for the AUTOSAR Use-Case
Highlights of MES Model Examiner® (MXAM) v.9.0
Assisted and Automated Safe Repair of Selected Findings
MXAM streamlines modeling with a new repair function for individually selected findings. A new dialog shows detailed information about the model part, specific reason, and suggested repair action for each finding, allowing more control over repair activities.
New MES Checks for Modeling Best Practices in Stateflow
Increased Coverage of MAB Guidelines
Important Support Information
Updated Licenses for MES Model Examiner® (MXAM)
MXAM has released a new major version and thus requires a license update. License updates are available for all active customers, i.e. customers with a valid support and maintenance contract. For MXAM 9.0, the MES License Support team will contact all active customers within the next few days to provide updated license files. The updated licenses will remain compatible with older tool versions.
Update Required for Licensing Servers Running FlexNet Publisher Versions Older than FNP 11.19.
An update of the MES license module in the latest MES tool releases requires the update of the FNP license server to version 11.19.1 or above. It can be downloaded from this page.
Highlights in MES Model Examiner® (MXAM) v.8.2
Generic MXRAY Model Metric Check
Through a new check matlab_mxray_generic_0001, any numeric model metric can be assessed, by configuring an upper bound for its numeric value. A finding is created for each structural element with a metric exceeding the upper bound value.
Queuing of CI License Checkouts
MXAM now supports queuing license requests when there is no available license at the time of request. A timeout can configured. This feature requires the MXAM_CI_EXEC license.
Increased Coverage of MAB Guidelines (version 5.0)
Several new checks cover numerous best practices for good modeling style and configuration in Simulink and Stateflow.
Highlights in MES Model Examiner® (MXAM) v.8.1
Automatic return of unused licenses
When licensed instances of the MXAM application remain idle for more than 6 hours, their licenses are automatically returned to the license server. This allows a more effective license usage and avoids unused licensed tool instances. The affected idle MXAM instances are blocked until user input requests a new license checkout.
Support of Linux operating systems (BETA)
New Guidelines for Targetlink (Versions 5.0, 5.1, and 5.2)
Six new guidelines focus on optimizing Targetlink code generation and MISRA C compliance.
Highlights in MES Model Examiner® (MXAM) v.8.0
Extended Reporting Details
Finding messages referencing additional model elements now include footnotes with link details when model links are not resolvable (e.g. in xlsx or PDF reports).
Report details are consolidated among report formats, adding the architectural metrics table to html and PDF reports, and parameter configuration details to xlsx reports.
Additional Guidelines
New guidelines are added focusing on implicit data type conversions, saturation settings of Integrator blocks, and layouts in Stateflow.
Installation
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]
License Configuration
Learn more about the MES Quality Tools License Configuration, general license questions and the MES licensing models as well as how to change your MAC-ID.
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 sales@model-engineers.com.
System Requirements
The following system requirements must be in place to use MXAM:
- Windows Vista, Windows 7, Windows 8, Windows 10 (64-bit versions), Windows 11, or
- Linux (64-bit versions), tested with Ubuntu 20.04.1 Desktop.
- Java 8 to 15 needs to be installed on your system (the tested version to work with MXAM is AdoptOpenJDK 8).
- System requirements when using MXAM with MATLAB®/Simulink®/Stateflow®: MATLAB® version see table below
- System requirements when additionally using TargetLink®: TargetLink® (base suite) version see table below
- System requirements when using MXAM with ASCET: ASCET 6.1 to 6.4.6
- 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 |
9.1 | R2015b - R2022b | TL 4.1 - TL 2022-B |
9.0 | R2015b - R2022b | TL 4.1 - TL 2022-B |
8.2 | R2015b - R2022a | TL 4.1 - TL 5.2 |
8.1 | R2015b - R2021b | TL 4.1 - TL 5.2 |
8.0 | R2015b - R2021b | TL 4.1 - TL 5.2 |
7.3 | R2013b - R2021b | TL 3.5 - TL 5.2 |
7.2 | R2013b - R2020b | TL 3.5 - TL 5.1 |
7.1 | R2013b - R2020b | TL 3.5 - TL 5.1 |
7.0 | R2013b - R2020b | TL 3.5 - TL 5.1 |
6.5 | R2011b - R2020b | TL 3.3 - TL 5.0 |
6.4 | R2011b - R2019b | TL 3.3 - TL 5.0 |
6.3 | R2011b - R2019b | TL 3.3 - TL 5.0 |
6.2 | R2011b - R2019b | TL 3.3 - TL 5.0 |
6.1 | R2011b - R2019a | TL 3.3 - TL 4.4 |
6.0 | R2011b - R2019a | TL 3.3 - TL 4.4 |
5.3 | R2011b - R2018b | TL 3.3 - TL 4.4 |
5.2 | R2011b - R2018b | TL 3.3 - TL 4.3 |
5.1 | R2011b - R2018b | TL 3.3 - TL 4.3 |
5.0 | R2011b - R2018a | TL 3.3 - TL 4.3 |
4.7 | R2009b - R2017b | TL 3.2 - TL 4.3 |
4.6 | R2009b - R2017b | TL 3.2 - TL 4.2 |
4.5 | R2009b - R2017a | TL 3.2 - TL 4.2 |
4.4 | R2009b - R2017a | TL 3.2 - TL 4.2 |
4.3 | R2009b - R2016b | TL 3.2 - TL 4.2 |
4.2 | R2009b - R2016b | TL 3.2 - 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 |
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"
For ASCET:
- Press "Analyze" in MXAM
- Press "Open ASCET" 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"
Guidelines
- 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.
Suggestions
If you have any suggestions to help us improve the MES Model Examiner®, please do not hesitate to contact us:
Email: mxam@model-engineers.com
User Instruction

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).
MXAM Videos
In this video, Model Engineering Solutions (MES) will demonstrate how to set up an MXAM project as an mxmp-file. You will learn how to create and configure an MXAM project and how to save and load a project. Since this video is focused on the first step of the MXAM workflow, basic knowledge of the workflow is needed in order to watch this video.
MES Webinar Series
Find all upcoming webinars. Participation in our webinars is of course free of charge. Webinars are held in English (unless otherwise stated).
Release Notes - MXAM v.9.1 (April 2023)
Tool Framework
Pre-check Before Analysis
- A new model pre-check is executed before analysis to ensure that the analysis is performed on the basis of valid data. This includes putting the model into compile mode. If the model fails the pre-check, validation markers will be generated for the report to mark detected errors.
New Repair Finding MATLAB API
- The new repair finding functionality from MXAM 9.0.0 can now be used in MATLAB with mxamapi_repairOpenReport.m. This starts repairing all non-interactive and repairable findings from the last opened report in MXAM.
Improvements
- Added option to anonymize paths in the exported reports.
- Filter settings in library browser are now persisted.
- Improved handling of a changed license configuration for MXAM in MATLAB. This no longer requires a MATLAB restart to become effective. (#8519)
- If unmapped annotations are detected, new validation markers are now generated.
- Added information regarding the installed edition to several places in MXAM, i.e. to information in gui, to mxam.exe property info, and to the log file.
- Annotations in deprecated format are now highlighted in the annotation view.
Bug fixes
- Fixed a bug with certain findings being fixable although the corresponding check has its repair option set to false. (#10794)
- Fixed a bug that could occur while editing an ignore list. In very rare cases, edited values could get lost. (#10661)
- Fixed license error if license file or license server is not configured. (#10791)
Guidelines, Checks, and Documents
Extended the Assisted and Automated Safe Repair of Findings
- New repair functionality has been added to checks for the following topics:
- Code Generation Options: mcheck_mes_cgtl_9002, mcheck_mes_cgtl_9003, mcheck_mes_cgtl_9004 (#10768)
- Stateflow Layout: mcheck_jc_0731, mcheck_jc_0752 (#10514, #10508)
- Multiport Switch Block: mcheck_mes_sk_005, mcheck_mes_sk_004 (#10767)
- Further topics: mcheck_misra_tl_1_2_b, mcheck_misra_tl_5_10, mcheck_mes_sk_009 (#10767)
Ensure Readiness of Model and Setup for Static Analysis with MXAM
- Automatic pre-validation of the analyzed Simulink (R) model is now integrated. This prevalidation includes checking
- the model’s compilability,
- MiL mode setting,
- that the corresponding TL Data Dictionary is open,
- if all references (libraries, referenced models) are resolved.
Integrated Support for Model Variants
- The scope of the analysis can be configured by a global parameter ‘Variants’ to include either only active variants or all variants. This parameter is applied to all checks and replaces the parameter ‘Global.FilterConfigurableSubsystems’. (#10723)
- If the old parameter ‘Global.Filter.ConfigurableSubsystems’ is not set to default in a project, the parameter is not used by MXAM anymore and should be removed. (compatibility considerations)
New checks Available Covering MAB Guidelines (5.0)
- Verify that the block parameter ‘Sample Time’ is set to ‘-1’ with guideline jc_0641. (#10442)
- Ensure the correct usage of continuous-time and discrete-time Delay blocks in continuous and discrete models with guideline jc_0623. (#10478)
New MES-MATLAB Checks for Signal Naming Requirements
- We have added new checks for signal naming requirements from MISRA AC SLSF and MES Functional Safety Modeling Guidelines standards.
- New version (v02) of the MISRA AC SLSF guideline document containing the new guideline misra_slsf_027_abcdfghi merging the respective part from the original document.
- Re-organization of MISRA SLSF 027 guidelines for better usability.
- Verify that specified signals are named at the source with check mcheck_mes_slsf_1102 and guidelines misra_slsf_027_abcdfghi, sdt_sc005, and sdt_sc006.
- Ensure that the property ‘SignalPropagation’ (if available) is set to ‘on’ with check mcheck_mes_slsf_1104 and guidelines misra_slsf_027_abcdfghi, sdt_sc005, and sdt_sc006.
- Prohibit re-naming of a signal and naming of a signal not at the source with check mes_slsf_1103 and guidelines sdt_sc005 and sdt_sc006.
Improvements
- mcheck_jc_0795: The check now supports repair of Stateflow.Data objects with identification feature ‘SID’ or ‘SID&Path’ due to the corrected SID computation. (#10599)
- mcheck_slsf_031_a and mcheck_db_0141: The respective check parameter ‘.AllowedBlocksInLoops’ is now considered in case a subsystem is used in a feedback loop. Additionally, check messaging for prohibited blocks in feedback loops was refined. (#10770)
- mcheck_sdt_sc008: The check parameter ‘MES.sdt_sc008.blocksToCheck’ was enhanced so that inputs and outputs of blocks can be specified to be checked for implicit data type conversion. (#10737)
- The ISO 25119 references in the guidelines were updated to the ISO 25119:2018 version of the standard. (#10752)
Changes
- mes_misra_tl_5_10: Extra handling of code-files has been removed, as it is not required by the guideline. (#10767).
Bug Fixes
- Fixed an issue where mcheck_mes_sk_006 reported invalid failed findings on Simulink Inports and Outports used in TargetLink subsystems of AUTOSAR models. (#10758)
- Fixed an issue where the signal tracing could not resolve TL_SWCSenderPort and TL_SWCReceiverPort blocks in some circumstances. (#10882)
- Improved the detection of bus signals for check mcheck_misra_slsf_036_a. (#10857)
- Improved handling of Simulink.Bus and overall bus support in misra_slsf_013_b. (#10842)
- Fixed mcheck_ds_0029 such that it can trace bus signals to its source. (#10639)
- Signals can now be traced through enable and trigger ports with output signals. (#10870)
- Fixed an issue in various checks where Sqrt blocks were not correctly identified (mcheck_ds_0019 ,mcheck_ds_0020, mcheck_ds_0022, mcheck_ds_0024, mcheck_ds_0026, mcheck_ds_0028, mcheck_ds_0034, mcheck_ds_0035, mcheck_ds_0036, mcheck_ds_0039, mcheck_ds_0041, mcheck_ds_0050, mcheck_ds_0051, mcheck_ds_0052). (#10818)
- Fixed mcheck_jc_0794 such that it identifies Reciprocal blocks for potential Division by Zero occurrences. (#10684)
- Fixed an issue where a subsystem with only one block was leading to abort for check misra_tl_1_2_b. (#10898)
- Fixed an issue where Stateflow related checks would abort in certain situations, when using MATLAB R2022a or later. (#10884)
- misra_slsf_012_a, jc_0141, misra_tl_5_8: The check could not repair findings on TL Switch blocks. (#10793)
- The check mcheck_misra_slsf_007_a will no longer check the initial condition of virtual outports in conditionally executed subsystems. (#10921)
- Fixed an issue where the check mcheck_misra_tl_7_1 could abort if multiple TL_MainDialogs were present in the model. (#10936)
Tool Framework
Bug Fixes
- Enabled SID computation for Stateflow objects without .Chart property (Stateflow.Data, Stateflow.EMFunction, …) to support finding repair and annotation mapping. (#10599)