ETAS ETAS Calibration Suite
Welcome to ETAS Calibration Suite
AI-powered end-to-end calibration workflow
Cal Suite

Your AI concierge can guide you through the entire calibration pipeline. Use the quick actions or ask anything.

New Project
Set up a new calibration project
Open project
Find and resume a recent project
Standalone Tools
Use independently without the full calibration workflow
EATB
Data visualization & reporting
localhost:9231
Data Operator
Parse, curate & transform data
Currently unavailable
ASCMO-MOCA
Model calibration & optimization
Currently unavailable
AI Active Learning Loop: Observe → Learn → Recommend → Execute Live
ETAS Engineering Sidekick
Step-by-step guidance • 16 knowledge agents • Calibration process
ASCMO EATB FMU +10
Welcome! I'm your ETAS Engineering Sidekick. I can:

Guide you step-by-step through any workflow
Answer questions from the ETAS knowledge base
Help plan calibration (DPF, EGR, T2.0, etc.)
Write automation scripts

What would you like to do?
Workflow guide T2.0 Cal FMU help Sigma plan
AI Smart Recommendations
Proactive insights based on your project state and data patterns
Active Learning NTR Engine
1 Observe → 2 Learn → 3 Recommend → 4 Execute → ↺ continuous
Project Setup
Define optimization scope, targets, and constraints — Lead Calibrator
Step 2
Model Upload
Upload your model for FMU generation
Step 2

Upload your model for FMU generation or validation. Supported: C source code (.c, .h), project archives (.zip with sources), pre-built FMU files (.fmu), and static libraries (.a, .lib). For Simulink or MATLAB models, first export as C-code using Embedded Coder, then upload the generated .c/.h files here.

Drop model files here or click to browse
Supports: .c, .h, .zip, .fmu, .a, .lib (max 500MB)
Model Fidelity Check
AI-powered validation against ETAS knowledge base
Not run

The AI fidelity engine validates your model against ETAS lessons learned and best practices. It continuously learns from new patterns and curated feedback.

FMU Generation
Build FMUs with ASCMO FMU Builder
Step 4

Upload your source files and select target platform(s). The system will compile your model into FMI 2.0 compliant FMUs.

About the FMI Wrapper: If you only have your model C-code (e.g., Turbo_Boost_Model.c), the tool will auto-generate the FMI 2.0 wrapper (_FMU.c) for you — including fmi2Instantiate, fmi2DoStep, fmi2GetReal/SetReal, and correct causality classification.

If you already have an FMI wrapper file (a _FMU.c that includes fmi2Functions.h), upload it alongside your model code and the tool will use yours instead.
How to Export C-Code from Your Model
Detailed instructions for exporting from Simulink (with/without license), OpenModelica, Scilab, Python, ASCET, GT-SUITE, and more.
Open Guide ↗
Source Files
Drop C source files here (.c, .h)
Accepts .zip ECU projects, C source files (.c, .h), static libraries (.a, .lib), or Embedded Coder exports
Target Platform(s)
Windows + Linux
Generate both platform FMUs
Linux Only
Generate Linux FMU only
ASCMO-MOCA Project Setup
Create your MOCA optimization project on the desktop tool, then upload here
Step 6
Already have a .moca project file? Skip this step and go directly to Data Acquisition →
How to Create a MOCA Project in ASCMO Desktop
1
Open ASCMO-DESK → Model Calibration (MOCA)
Launch the ASCMO-DESK application and click the "Model Calibration" tile to open ASCMO-MOCA.
2
Create New Project → Import FMU
Click "New" in the start window. In the main workspace, click "Import FMU" and select your .fmu file (built in Step 5 or pre-existing).
3
Define Parameters → Create or Load Variables
In the Parameters step, create or import your FMU variables. MOCA reads the variable list from the FMU's modelDescription.xml. You then assign roles: Inputs (factors to vary), Outputs (responses to optimize), Parameters (constants to tune). This must be done before mapping.
4
Define Objectives & Constraints
Set optimization objectives (minimize NOx, minimize BSFC, etc.) and hard constraints (OBD limits, temperature bounds). These should match what you defined in Project Setup (Step 2).
5
Configure Measurement Data Import
Import your measurement data files. MOCA uses this data to train the model internally. Ensure the data channels match the variable names defined in Step 3. MOCA handles its own internal training data allocation.
6
Save Project → Export for MOCA-Runtime
File → Save (as .moca). Optionally: File → Export to MOCA-Runtime for cloud execution. The saved .moca file is what you'll upload in Step 9 (MOCA Optimization).
Key Requirements for Cloud Optimization
• Causality must be correct: inp_* → Input, out_* → Output, par_* → Parameter
• FMU must contain a step function (calculate(dt) or similar) for time-stepping
• Same FMU used in desktop MOCA and uploaded to cloud — no version mismatch
• Objectives in MOCA should match the targets defined in Project Setup (Step 2)
Detailed MOCA Guide (for novice users — click to expand)

Understanding Gaussian Process Models

MOCA uses Gaussian Process (GP/Kriging) regression — a non-parametric modeling approach that provides both a prediction AND an uncertainty estimate at every point. Key properties:

  • Interpolating: Passes exactly through training data points
  • Uncertainty quantification: Shows wider confidence bands far from data
  • Automatic Relevance Determination (ARD): Identifies which inputs matter most
  • Kernel options: Squared Exponential (RBF), Matérn 3/2, Matérn 5/2

Target accuracy: R² > 0.95 for good optimization results. If R² < 0.90, add more data points.

Design of Experiments (DoE) — Recommended Sizes

FactorsMin PointsRecommendedDoE Type
2-33040-50Latin Hypercube
4-55060-80Latin Hypercube
6-880100-150D-optimal or LHS
9+120+150-200+Space-filling + Adaptive

Rule of thumb: Minimum = 10 × number_of_factors. Add 15-25 adaptive points after initial model for improved accuracy at boundaries.

Multi-Objective Optimization (Pareto Front)

When objectives conflict (fuel vs NOx), MOCA finds the Pareto front — the set of solutions where no objective can be improved without worsening another.

  • Algorithm: NSGA-II (Non-dominated Sorting Genetic Algorithm)
  • Population size: 100-500 (larger = better coverage, slower)
  • Generations: 200-1000 (more = finer Pareto resolution)
  • You select your preferred trade-off point from the Pareto curve

FMU Virtual Calibration Workflow

Instead of running physical tests, MOCA can optimize using an FMU (simulation model):

  1. Load FMU (your plant model from Step 5)
  2. Define FMU inputs as: operating conditions + calibration parameters
  3. Define FMU outputs as: responses to optimize (NOx, BSFC, etc.)
  4. Run space-filling DoE on FMU (automated, no test bench needed)
  5. Train GP surrogate models from FMU responses
  6. Optimize on GP surrogates (1000× faster than running FMU)
  7. Validate optimal points by running them back through FMU
  8. Export optimized calibration maps (DCM/CDFX)

Map Generation & Export

  • Convert scattered optimized points → regular grid calibration map
  • Apply smoothing (gradient constraints for drivability)
  • Export as: DCM (INCA format), CDFX (A2L compatible), or CSV

Common Troubleshooting

ProblemCauseSolution
R² < 0.90Not enough data / poor coverageAdd 20+ adaptive DoE points at high-uncertainty regions
Optimization finds infeasible solutionsConstraint boundaries too tightAdd margin to constraints (e.g., NOx < 55 instead of < 60)
Maps not smoothSmoothing weight too lowIncrease smoothing parameter in map generation (0.3-0.7)
Very long training timeToo many data points (>5000)Use subset selection or sparse GP approximation
Pareto front is flatObjectives not truly conflictingCheck if single-objective optimization is sufficient
Data Pre-Staging
Prepare and filter measurement data using Data Operator before cloud upload
Step 7

Before uploading data to the cloud, use ETAS Data Operator on your desktop to filter, clean, and reduce your measurement files. This saves cloud storage costs and ensures only relevant data enters the pipeline. The AI Sidekick can help you identify which channels to keep.

Why Pre-Stage?
90%
Typical data reduction
~$0
No cloud cost for filtering
Faster
Smaller uploads & queries
Pre-Staging Process Flow
Raw MF4
10 files, 500+ ch
→
AI Scan
Recommend channels
→
DO Filter
Select & process
→
Clean Export
1 file, 25-40 ch
→
Upload
Step 8
Supported Measurement Formats
.mf4
ASAM MDF4
.dat/.mdf
Legacy INCA
.csv
CSV / TSV
.mat
MATLAB v5/7.3
.xlsx
Excel
.tdms
NI DIAdem
.dcm
Calibration
.asc
CAN trace
Data Acquisition
Upload or pull measurement data
Step 8

Additional measurements are optional. Upload them from your PC or pull from a connected cloud server when needed. Uploaded data is processed through the Medallion architecture (Bronze → Silver → Gold) before being made available to the LLM and optimization tools.

Upload Data from PC
Drop measurement files here or click to browse
Supports: .mf4, .mdf, .csv, .xls, .xlsx
Coming later: .c, .h, .mat, .dat, .dcm, .txt, .tdms, .asc, .tsv, .mdf4
EATB Pre-Optimization Visualization
Visualize raw data before optimization
Step 9
Visualization Tool
Token Usage Note: Python-based analytics require LLM-generated scripts, consuming more tokens per session. Using EATB or Data Operator through your license executes natively without additional LLM calls, significantly reducing token/credit consumption.
EATB (Web)
Interactive test bench dashboard
Licensed ✓
Lower token usage
Python (Plotly)
Auto-generated Python dashboard
Always Available
Higher token usage
Custom Plot Builder — Your Data
Select signals from your uploaded measurement data to create interactive charts. All plots are generated from your actual data.
Upload data in Step 8 to see available signals, or select from detected channels:
EATB Dashboard Setup Guide (for novice users — click to expand)

What is EATB?

ETAS Automation Toolbox (EATB) is a web-based visualization and automation platform for calibration data. It runs locally on port 9231 and provides interactive dashboards, reports, and scripting capabilities.

Setting Up EATB on Your PC

  1. Install: EATB is included with ETAS Tool Suite. Verify: Start Menu → ETAS → EATB
  2. Configuration: Edit eatbconfiguration.properties to set port (default: 9231)
  3. Start: Run EATB service — it will serve dashboards at http://localhost:9231
  4. Verify: Open browser → http://localhost:9231 → you should see the EATB home page

EATB Dashboard Features

Time-Series Viewer
Plot any signal vs time. Zoom, pan, compare multiple channels. Cursor readout at any point.
Correlation / Scatter
X vs Y scatter plots. Color by 3rd variable. Trend lines, R² display.
Histograms & Distributions
Data distribution analysis. Bin count adjustment. Normal curve overlay.
Traffic Light Reports
Pass/fail status per operating point. Green/yellow/red based on tolerance bands.
Map Viewer (3D)
3D surface plots of calibration maps. Pre vs post comparison. Difference maps.
Campaign Summaries
KPI rollups per test campaign. Automated progress reporting.

EATB Python Scripting (Automation)

# Connect to EATB
import eatb
session = eatb.connect('localhost', 9231)

# Load measurement data
data = session.load_file('measurement.mf4')

# Create time-series plot
plot = session.create_plot('TimeSeries')
plot.add_signal('EngineSpeed')
plot.add_signal('ExhaustTemp_Bank1')
plot.show()

# Generate traffic light report
report = session.create_report('TrafficLight')
report.add_criterion('NOx', max=60, unit='mg/km')
report.add_criterion('Soot', max=4.5, unit='mg/km')
report.generate()

Demo Templates

The inline dashboard above uses Plotly.js charts that mirror EATB's visualization style. Available chart types:

  • Line (Time Series): Select time on X-axis, any signal(s) on Y-axis
  • Scatter (X vs Y): Any two signals as X and Y (e.g., RPM vs NOx)
  • Histogram: Distribution of any single signal
  • Box Plot: Statistical summary across operating conditions

To use with your data: Upload measurement files in Step 8 (Data Upload). The Custom Plot Builder above will auto-populate with your actual signal names.

ASCMO-MOCA Optimization
Multi-objective calibration optimization
Ready
How ASCMO-MOCA Cloud Optimization Works
Simply upload your .fmu and .moca project file. The platform handles everything else automatically:
You upload: *.fmu *.moca (project) → AI auto-generates: script.py work_package.json orchestration.json
Fully automated: Once you upload the two files, the AI generates all execution scripts, validates them, assembles the package, and submits to the cloud orchestrator. No manual scripting required.
①
Upload
Drop your .fmu + .moca files
②
AI Generates & Validates
Scripts, configs, orchestration payload — all auto-generated and syntax-checked
③
Select Compute & Run
Pick your tier, click Start — cloud handles the rest
Upload Optimization Inputs
Provide an .fmu, .moca project, and required .ascmoScript. Any Step 8 measurements are included automatically.
1. FMU File
Drop .fmu here
Your compiled FMU model
2. MOCA Project File
Drop .moca here
ASCMO-MOCA project config
3. ASCMO Script
Drop .ascmoScript here
Required ASCMO execution script
4. Additional measurements (optional)
Select Compute Tier
Azure D-series v5 VMs (US East 2) — on-demand pricing. Time estimates adjust dynamically based on uploaded FMU size and data volume.
16
vCPUs
D16ds v5 • 64 GB
$0.768/hr
~4.2h • $3.23/run
32
vCPUs
D32ds v5 • 128 GB
$1.536/hr
~2.3h • $3.53/run
64
vCPUs
D64ds v5 • 256 GB
$3.072/hr
~1.4h • $4.30/run
Best value
128
vCPUs
2× D64ds v5 • 512 GB
$6.144/hr
~0.9h • $5.53/run
Fastest
Speed vs. Cost Efficiency
Dynamic estimation based on uploaded file sizes. Bar chart shows time per tier; line shows total cost. Green = recommended.
Demo mode — simulated execution. Sign in to run ASCMO optimization.
Post-Optimization Results & Reporting
Compare pre/post optimization and generate reports
Complete
View Results Using:
EATB (Web)
Pre vs Post comparison dashboard
Licensed ✓
Lower token usage
Python Analytics
Full statistical comparison with heatmaps, scatter, FFT
Always Available
Higher token usage
—
Model Quality (R²)
—
Fuel Economy
—
Pareto Solutions
—
OBD Compliance
AI Post-Optimization Analysis Auto-generated
Optimization Summary
Risks & Follow-up
Report Generation
Usage & Billing Dashboard
Token consumption, costs, transactions, and credit tracking
Pay-Per-Use
Tokens Used (This Month)
—
Loading...
ROI Value (Time Saved)
—
Loading...
Compute Cost (MTD)
—
Loading...
Total Cost (MTD)
—
Loading...
Daily Token Consumption (Real-time)
Cost Breakdown (Live)
Usage by Team Member (Live)
ROI: Hours Saved by Category
Recent Transactions
TimestampUserActionTokensCostAgent
Jul 15, 14:32suresh.sChat query2,847$0.043ASCMO-MOCA
Jul 15, 14:28jerry.cFMU Build (8-core)—$3.20FMU Builder
Jul 15, 14:15suresh.sPython analytics8,421$0.126Python
Jul 15, 13:52jerry.cMOCA optimization—$12.80ASCMO-MOCA
Jul 15, 13:30suresh.sData ingest (50MB)1,205$0.018Data Operator
Infrastructure & Platform Services
Cross-cutting services, compute, storage, compliance, and monitoring
All Systems Operational
Cross-Cutting Platform Services
Microsoft Marketplace
Billing & Transactions
Active
Cloud Licensing & Metering
Usage tracking, entitlements
Active
Security & Compliance
GDPR, PII, Data Governance
Compliant
Notifications & Alerts
Email / In-App
Active
Audit & Compliance
Access, Actions, Traceability
Logging
Cost Management
CPU Allocation, Estimation
Tracking
Infrastructure & Core Platform
Secure Cloud Environment
Tenant Isolation, IAM, Encryption
● Azure East US — Healthy
Orchestration & Scheduling
Kubernetes, Autoscaling, Jobs
● 3 nodes — 2 jobs queued
Compute Allocation
CPU/Memory, Cost & Time Based
● 8-core tier — 62% utilized
Data Lake Storage
Secure, Scalable, High Availability
● 2.4 TB used / 10 TB quota
Model & Artifact Storage
Reports, DCM, Models, Logs
● 847 artifacts — 12.3 GB
Monitoring & Observability
Metrics, Logs, Traces, Health
● 99.97% uptime (30d)
ETAS Cloud Hub License Status
EATB
Licensed ✓
Data Operator
Licensed ✓
ASCMO-MOCA
Licensed ✓
FMU Builder
Licensed ✓
Lessons Learned & Best Practices
Your organization's collective calibration knowledge
—
0
Total Conversations
0
Lessons Learned
0
AI Corrections
0
Team Members
Add Lesson Learned / Best Practice
Company Knowledge Graph
Tenant-Isolated
Upload your organization's proprietary knowledge — calibration guides, internal standards, process documents, model libraries. This knowledge is only accessible to users from your company and is used by the AI to provide company-specific recommendations.
Leave empty for automatic routing; select multiple domains to override.
Upload Documents
PDF, DOCX, TXT, MD, CSV
Import Knowledge DB
JSON or SQLite export
Recent Lessons & Best Practices
Save & Archive
Save project permanently and manage data retention
Step 12

Project workflow state and final reports remain available according to your customer retention policy. File expiry is calculated by the server for this project.

Permanent Storage
Project configuration (Step 2)
Optimization results & Pareto selections
Final reports & exported calibrations (DCM/CDFX)
AI data insights & recommendations
Annotations, audit trail, version history
Model health validation records
Retained indefinitely — always accessible
Project File Retention
Retention status loads when the project is resumed.
Expired projects permit project details and final report viewing only.
The external retention job removes expired files.
Resume Project

Resume restores saved steps, current execution state, and linked files while the project is active. After expiry, the project becomes read-only and files are unavailable.

What Will Be Saved
Project: —
FMU: No FMU built yet
MOCA Project: No MOCA project uploaded
Additional measurements: No additional measurements
Results: No optimization results
AI Insights: Chat history & recommendations saved
ETAS Engineering Sidekick
Natural language interface to all calibration tools
LLM Connected MCP Active