How to Start Monitoring Your CNC Machines for Free (Heidenhain Edition)
CNC machine monitoring is one of the fastest and cheapest ways to improve machine utilization, reduce downtime, and understand what actually happens on the shop floor. But many manufacturers assume that implementing monitoring requires expensive MES systems, custom integrations, or hardware retrofits.
The truth: you can start monitoring many CNC machines - especially Heidenhain - completely free, using built-in controller capabilities and open-source tools.
Why Heidenhain?
Heidenhain TNC controllers (TNC 320/620/640 and older iTNC series) already expose machine data via:
- OPC UA (newer models)
- Remote Access / NET service
- Heidenhain DNC over Ethernet
- Status messages via PLC interface
In this guide, we’ll use the built-in OPC UA server, because it provides structured, real-time machine data and requires no additional licensing for basic access.
What You’ll Need
- Heidenhain TNC640 / TNC620 / TNC7 with OPC UA server enabled
- A Windows or Linux PC Any PC connected to the same network
- Free OPC UA client software - anything like UaExpert, MQTT OPC UA Gateway, or OpenHAB will do
- Free dashboard tool Grafana, InfluxDB, or Node-RED (optional)
Everything listed here is free, so you can move on and make your first attempt in CNC monitoring.
Step 1 - Enable OPC UA on the Heidenhain Controller
- On the TNC controller, go to Machine Settings → Network → OPC UA
- Enable the OPC UA server
- Set server address (usually the machine’s IP) and port (default: 4840)
- Create a simple user account (username/password)
- Restart OPC UA service if necessary
What this gives you
The controller now exposes data such as:
- Machine coordinates
- Feed rate
- Spindle load & speed
- Program name
- Execution state (running, stopped, error)
- M-codes, alarms, overrides
To read them and translate to human - we need a next layer of our system.
Step 2 - Install UaExpert
Download UaExpert from the Unified Automation website (free for non-commercial use). Install it on your PC and start the application.
Step 3 - Connect to the CNC OPC UA Server
In UaExpert, go to Add Server Choose Custom Discovery → Add. Enter the CNC address:
opc.tcp://<machine-ip>:4840
Select Anonymous or User/Password (depending on your setup), and click Connect. Now, you should now see a structured tree of machine parameters.
Step 4 - Identify Useful Machine Signals
Search for nodes such as:
Basic status machine signals
- /Machine/State
- /Machine/Mode
- /Machine/Program/Name
- /Axes/Position
Real-time performance data machine signals
- /Spindle/Speed
- /Spindle/Load
- /Feed/Override
- /Tool/CurrentToolNumber
Health & alarms machine signals
- /Alarms/Active
- /Diagnostics/Status
Drag these nodes into UaExpert’s Data Monitor panel to watch values update in real time. Congratulations - you’re already monitoring your machine!
Step 5 - Set Up Automatic Data Logging (Still Free)
If you want graphs, history, or KPIs, connect the OPC UA output to a free database or dashboard.
Option A — Node-RED (easiest)
- Install Node-RED (free)
- Install the OPC UA plugin
- Create a flow:
- OPC UA Input → Function (optional) → Database / Dashboard
Works on Windows, Linux, or even a Raspberry Pi - yes, that simple.
Option B — InfluxDB + Grafana (best for long-term logs)
- Install InfluxDB (time-series database)
- Install Grafana
- Create a small script (Python or Node-RED) that writes OPC UA values to InfluxDB
- Visualize:
- OEE
- Spindle load trends
- Machine activity
- Program run time
- Idle vs run time
This setup is used by many DIY monitoring enthusiasts and small shops.
Step 6 - Build Your First Dashboard
Suggested and most useful widgets:
- Machine Status Light (green = running, yellow = waiting, red = alarm)
- Spindle Load Graph - helps spot heavy cuts or tool wear
- Cycle Time Tracker - shows rogram name + part cycle time
- Activity Timeline - easy to spot Run / Stop / Error segments
With Grafana or Node-RED dashboard you can build this visually without code.
What You Can Monitor for Free
This is 80% of the value of a commercial monitoring system without spending anything.
- Real-time machine state
- Utilization (machine running vs idle)
- Spindle load and speed
- Axis motions
- Overrides
- Active alarms
- Program execution
- Cycle times
When You’ll Eventually Need Paid Tools
Free DIY monitoring is great for:
- 1–10 machines = average machine shop
- Technical enthusiasts
- Shops with IT capability
- Pilots and experiments
But eventually, you may need:
- Central dashboards
- Integration with MES/ERP
- Alerts, analytics, predictions
- Multi-plant visibility
At that stage, upgrading to a commercial solution makes sense. But some of vendors supply free version of their software, already capture and visualize important data for your review.
Conclusion
Monitoring CNC machines doesn’t have to be expensive or complicated. Heidenhain controllers provide a built-in OPC UA server that works perfectly with free tools like UaExpert, Node-RED, InfluxDB, and Grafana. With this guide, you can start gathering real data from your shop floor in under an hour — completely free
About MDCplus
Our key features are real-time machine monitoring for swift issue resolution, power consumption tracking to promote sustainability, computerized maintenance management to reduce downtime, and vibration diagnostics for predictive maintenance. MDCplus's solutions are tailored for diverse industries, including aerospace, automotive, precision machining, and heavy industry. By delivering actionable insights and fostering seamless integration, we empower manufacturers to boost Overall Equipment Effectiveness (OEE), reduce operational costs, and achieve sustainable growth along with future planning.
Ready to increase your OEE, get clearer vision of your shop floor, and predict sustainably?