MACS - Modular Architecture for Control Software

MACS - Modular Architecture for Control Software

A development and deployment suite for control software. Build the logic visually, test it hardware-in-the-loop, and run it on embedded Linux.

AvailableV1.0.0
56
Function blocks
20+
Built-in nodes

One platform from bench to field.

Build and test on your desktop, then deploy the same project to an embedded Linux target where every node runs as a supervised service.

Nothing is a black box.

Studio generates readable C, tests are plain Python, and your own nodes can be written in C or Python against the same signal bus.

Simulated and real at the same time.

A signal can come from a simulated model, a virtual CAN bus, or a real device, and nothing downstream cares which. Start before the hardware exists and finish on it.

MACS combines visual function-block programming, real-time signal monitoring, and hardware-in-the-loop testing in one Linux-native platform. Everything in it is a node: a separate process that publishes named signals to a central bus and reads the signals it needs from there. A CAN message decoded by one node can drive a Studio model, a Modbus device, and a dashboard gauge without any glue code, and if one node crashes, the rest keep running.

For evaluating engineers: MACS occupies the same problem space as Vector CANoe, dSPACE, and NI VeriStand, but it is a platform you can extend. Custom nodes in C or Python plug into the same signal bus as the built-in ones, Simulink-generated C runs as a node next to MACS Studio models, and the test framework reports to your CI system through JUnit XML.

Performance: an earlier benchmark on a laptop-class i7, in a debug build with batched writes, measured around 16M signals per second through the signal bus with a median latency of about 6μs.

Beyond automotive: built-in nodes for Modbus TCP, MQTT, smart meters, Mean Well inverters, Nord Pool spot prices, and an InfluxDB sink make MACS a complete platform for battery and energy storage control. See Integrations for the full list.

MACS ships as two products: MACS Runtime for headless targets, and MACS Enterprise for the workstation, on x86_64 and arm64 Linux. Supported interfaces include classic CAN 2.0 with DBC files, J1939 diagnostics, CANopen, Modbus TCP, MQTT, and digital/analog I/O.

Challenges we solve

What you're working around today, and how MACS addresses it.

Control logic needs an embedded C specialist

MACS Studio turns a block diagram into readable C. The engineer who knows the process can build the controller.

Simulation and hardware testing are separate worlds

Signals come from simulated models, real devices, or both at once. Override single model inputs from Studio while everything else runs live.

Dedicated HIL hardware is expensive

MACS runs on standard Linux, from a desktop PC to an embedded ARM board. Use Tech42 hardware or your own.

Test results never reach the CI pipeline

Tests are Python and results export as JUnit XML, so Jenkins, GitHub Actions, or GitLab pick them up like any other suite.

One crash takes the whole system down

Each node is its own process. On a target they run as systemd services, so a failed node restarts on its own while the rest keep running.

Paying for a full suite to run one controller

Two products. MACS Runtime runs a project headless on the target. MACS Enterprise adds the desktop GUI, Studio, and the test framework.

Inside the platform

MACS Studio

MACS Studio

Visual programming with 56 function blocks, simulated with the same compiled C that runs on the target.

MACS Desktop GUI

MACS Desktop GUI

Project and node management by layer, with live node status and the system log in one window.

Web Dashboard

Web Dashboard

Browser-based monitoring and control. Live signals, control panels, test runs, and logs, with a REST and WebSocket API behind it.

You might also like

SparkBit

SparkBit

Compact Linux industrial computer for embedded control and multi-bus sensor bridging.

SparkFrame

SparkFrame

Customize your own enterprise rack.

SparkByte

SparkByte

The big brother of the SparkBit. More power, more CAN channels, more everything.

Interested in MACS - Modular Architecture for Control Software?

Get in touch for a demo or quote.