The modern automation platform powering every ADC system

autocore is ADC's modern, extensible automation platform — a complete replacement for legacy automation runtimes that runs on standard PC hardware and Linux. It delivers deterministic, real-time control written in Rust, web-based HMIs built in React and TypeScript, and EtherCAT or Modbus connectivity, all configured from a single JSON file and managed from a simple command-line tool. Every machine ADC ships today runs autocore at its core. autocore is the replacement for ADC MechLab, our previous platform that was focused on labratory automation and data collection. With autocore, we've merged our industrial automation technology with our labratory and data collection platform to create a cohesive platform that excels in all markets. Whether your project involves interfacing with traditional industrial components or collecting high-speed signals from NI hardware and storing large amounts of data, autocore has you covered. autocore is also extensible with publically-availble libraries, which means that it's easy to add custom features to autocore specific to your application.
For three decades the industrial-automation world has been locked to a handful of proprietary platforms. They work — but they trap you inside vendor-specific IDEs, opaque runtimes, scripting languages no one else speaks, and visualization tools that pre-date the modern web. autocore is ADC's answer: an automation platform built on the same standard tools your software team already uses every day. Standard PC hardware. Standard Linux. Standard programming languages. Standard web technologies. No proprietary IDE required, no vendor lock-in, no twenty-year-old visualization editors.
The heart of autocore is a deterministic control loop that runs at 1 kHz to 4 kHz — or faster — written in modern Rust. Control programs execute in a dedicated process synchronized to a configurable tick signal, exchanging cyclic I/O with hardware modules via low-latency data exchange. The pattern is exactly what any controls engineer would recognize: a fixed scan, deterministic I/O, predictable timing. The difference is the Rust programming language — battle-tested, type-safe, and supported by a global open-source ecosystem rather than a single vendor's licensing department.
Modern operators expect modern interfaces. autocore lets you build HMIs in React and TypeScript, accessible from any browser on the network — no special client software, no per-seat licenses, no thirty-year-old form designer. The autocore-server exposes a clean WebSocket JSON API that any front-end framework can connect to, so your machine UI can be as ambitious as anything on the public web. The teach pendant you're reading this on is built the same way.
autocore ships with hardware connectivity modules that any control engineer will recognize. autocore-ethercat is a full EtherCAT master implementation; autocore-modbus speaks Modbus TCP. Slaves and registers are described in the same JSON project file as everything else. Variables are auto-generated into typed Rust structs at build time, so there is no manual address mapping and no run-time surprises.
At the center of every autocore system is the autocore-server — a single process responsible for managing shared memory, generating the tick signal, brokering communication between modules, and serving the web interface. Hardware drivers, fieldbus masters, and even the user-written control logic all attach as external modules that exchange data with the server. The model is simple, debuggable, and lets each piece of the system fail or be restarted independently without bringing down the rest.
A complete autocore project — variables, hardware modules, tick rate, network bindings — is described in a single file. Variables are addressed by fully qualified names so they read like a logical address in an industrial system, but they live as ordinary typed values in your code. Change the cycle rate, swap a fieldbus master, or rename a sensor in one place and the whole project picks up the change.
Every system ADC ships today — SwingFore, the GEN 6 load frame, the bat- and ball-cannon family, the indoor test ranges, every custom integration — runs autocore. When you call ADC for support and a technician opens a remote session to your machine, they're connecting to the same autocore-server you're looking at on the pendant. One platform, end to end, from our R&D bench to your production floor.