Skip to main content
Version: 2.0-dev

MTConnect Integration Guide

Use MaestroHub's MTConnect connector to collect real-time data from CNC machines, manufacturing equipment, and industrial devices that support the MTConnect standard. This guide explains how to configure connections, query device data, and integrate equipment monitoring into your pipelines.

Overview

The MTConnect connector provides:

  • Read-only access to MTConnect agents for device discovery, current values, and historical data
  • Four query types – Probe (device structure), Current (latest values), Sample (time-series), and Assets (tools, fixtures)
  • XML and JSON support for flexible response handling
  • No authentication required – MTConnect is designed for trusted network environments
What is MTConnect?

MTConnect is an open, royalty-free standard for exchanging data from manufacturing equipment. An MTConnect Agent collects data from machines via Adapters and serves it over HTTP. MaestroHub acts as a client, querying the agent for device information and process data.

Connection Configuration

Creating an MTConnect Connection

Navigate to ConnectionsNew ConnectionMTConnect and configure the following settings:

MTConnect Connection Creation Fields

1. Profile Information
FieldDefaultDescription
Profile Name-A descriptive name for this connection profile (required, max 100 characters)
Description-Optional description for this MTConnect connection
2. Agent Configuration
FieldDefaultDescription
Agent URL-MTConnect agent endpoint (e.g., http://cnc-agent.local:5000) – required, must be http:// or https://
Response FormatxmlExpected response format from the agent (xml or json)
Request Timeout (ms)30000Maximum time to wait for agent response (1000-300000 ms)

Agent URL Examples

  • http://192.168.1.100:5000 – Direct IP address
  • http://cnc-agent.factory.local:5000 – DNS hostname
  • https://mtconnect.example.com – Secure endpoint
3. TLS Settings
FieldDefaultDescription
Skip TLS VerificationfalseSkip SSL certificate verification (not recommended for production)
Security Note

The MTConnect standard does not require authentication – the specification states "no logon or logoff sequence is required." Security relies on network segmentation. Deploy agents on isolated OT networks and control access at the firewall level. Some MTConnect 2.0 agents support optional TLS certificates, but this is implementation-specific.

4. Health Check Settings
FieldDefaultDescription
Enable Health CheckfalsePeriodically verify agent connectivity
Health Check Endpoint/probePath used for health checks
Health Check Interval (s)60Interval between health checks (10-3600 seconds)
5. Connection Labels
FieldDefaultDescription
Labels-Key-value pairs to categorize this connection (max 10 labels)

Example Labels

  • environment: production – Deployment environment
  • cell: machining-01 – Manufacturing cell
  • equipment-type: cnc – Equipment category
  • location: building-a – Physical location

Function Builder

Creating MTConnect Functions

After the connection is configured:

  1. Go to FunctionsNew Function
  2. Choose the function type: Probe, Current, Sample, or Assets
  3. Select your MTConnect connection profile
  4. Configure device filters and query parameters

Probe Function

Purpose: Discover device structure and capabilities. Use this to understand what data items are available from a machine before querying values.

Configuration Fields

FieldTypeRequiredDefaultDescription
DeviceStringNo-Filter by device name (e.g., Mill-001). Leave empty for all devices.
PathStringNo-XPath filter to narrow results (e.g., //DataItem[@type='POSITION'])
Timeout (ms)NumberNo-Override connection timeout for this request

Response Structure

Returns device metadata including:

  • Device identifiers (id, name, uuid)
  • Component hierarchy (axes, controllers, systems)
  • Available data items with types and units

Use Cases: Initial setup, discovering available tags, documenting machine capabilities

Current Function

Purpose: Get the latest value for each data item. This returns a snapshot of current machine state without historical context.

Configuration Fields

FieldTypeRequiredDefaultDescription
DeviceStringNo-Filter by device name
PathStringNo-XPath filter for specific data items (e.g., //Position)
AtNumberNo-Get values at a specific sequence number
Timeout (ms)NumberNo-Override connection timeout for this request

Response Structure

Returns current values including:

  • Data item values with timestamps
  • Sequence numbers for change tracking
  • Component and device context

Use Cases: Real-time dashboards, current state monitoring, snapshot collection

Sample Function

Purpose: Retrieve historical time-series data. Use this for trend analysis, data logging, or catching up on missed values.

Configuration Fields

FieldTypeRequiredDefaultDescription
DeviceStringNo-Filter by device name
PathStringNo-XPath filter for specific data items
FromNumberNo-Starting sequence number (for incremental collection)
CountNumberNo100Maximum number of samples to return (1-10000)
Timeout (ms)NumberNo-Override connection timeout for this request

Response Structure

Returns time-series data including:

  • Ordered sequence of data item values
  • Timestamps for each sample
  • Sequence numbers for pagination

Use Cases: Historical analysis, data backfill, incremental data collection, trend monitoring

Incremental Collection

Store the last sequence number from each response. On the next request, use it as the From parameter to collect only new data without duplicates.

Assets Function

Purpose: Retrieve asset information such as cutting tools, fixtures, workpieces, and programs stored in the agent.

Configuration Fields

FieldTypeRequiredDefaultDescription
Asset TypeStringNo-Filter by asset type (e.g., CuttingTool, Fixture)
CountNumberNo100Maximum number of assets to return (1-1000)
Timeout (ms)NumberNo-Override connection timeout for this request

Response Structure

Returns asset details including:

  • Asset identifiers and types
  • Tool life and measurement data
  • Custom asset properties

Use Cases: Tool management, fixture tracking, program versioning

Understanding MTConnect Data

Data Item Categories

MTConnect organizes data into three categories:

CategoryDescriptionExamples
SamplesContinuously variable numeric valuesPosition, temperature, spindle speed, load
EventsDiscrete state changesExecution state, program name, operator mode
ConditionsAlarm and warning statesFaults, warnings, normal status

Common Data Item Types

TypeCategoryDescription
POSITIONSampleAxis position in configured units
SPINDLE_SPEEDSampleSpindle rotational speed (RPM)
LOADSampleComponent load percentage
EXECUTIONEventProgram execution state (ACTIVE, STOPPED, etc.)
PROGRAMEventCurrently loaded program name
AVAILABILITYEventDevice availability (AVAILABLE, UNAVAILABLE)
SYSTEMConditionSystem-level fault conditions

XPath Filtering

Use the Path parameter to filter results:

PatternDescription
//DataItem[@type='POSITION']All position data items
//Linear[@name='X']/DataItemsData items from X axis
//Controller//DataItemAll controller data items
//DataItem[@category='CONDITION']All condition data items

Pipeline Integration

Use MTConnect functions in the Pipeline Designer to build automated data collection workflows. Drag the MTConnect node onto the canvas, select your connection and function, and bind parameters to upstream outputs or constants.

Example Pipeline Patterns

  1. Periodic Polling: Schedule pipeline to run every minute, collect current values, store in database
  2. Incremental Collection: Track sequence numbers, collect only new samples since last run
  3. Event-Driven: Trigger on external event, probe device state, route based on conditions

If you're designing larger orchestrations, the Connector Nodes page shows how MTConnect nodes fit alongside other industrial protocols.

Common Use Cases

Machine Monitoring Dashboard

Collect current values from multiple CNC machines and display real-time status on operator dashboards showing spindle speed, axis positions, and execution state.

OEE Data Collection

Use Sample functions to collect historical data for calculating Overall Equipment Effectiveness – availability, performance, and quality metrics over time.

Tool Life Tracking

Query Assets functions to monitor cutting tool usage and remaining life, triggering alerts when tools approach replacement thresholds.

Predictive Maintenance

Collect load, vibration, and temperature samples over time. Feed this data to analytics systems to detect anomalies before equipment failures occur.

Production Reporting

Combine execution state events with part count data to generate shift reports, tracking cycle times, downtime reasons, and production quantities.

Troubleshooting

Connection Issues

SymptomPossible CauseSolution
Connection timeoutAgent not reachableVerify network connectivity and firewall rules
Invalid URL errorMalformed agent URLEnsure URL includes protocol (http:// or https://)
TLS certificate errorSelf-signed certificateEnable "Skip TLS Verification" for testing only

Data Issues

SymptomPossible CauseSolution
Empty responseNo matching devicesRemove device filter or verify device name
Missing data itemsXPath filter too restrictiveSimplify Path parameter or use Probe to discover structure
Stale dataAgent buffer overflowIncrease polling frequency or use smaller time windows
Testing Functions

Use the Test button in the Function Builder to validate your configuration before using it in pipelines. This helps identify issues with device names, paths, or parameter values.