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.








