GUIDE6 min readUpdated Jun 2026

Real-time & determinism: Pi vs PLC

Where a PLC clearly wins — and the co-processor pattern that lets a Pi handle hard loops anyway.

SHORT ANSWER

Stock Linux on a Pi is not hard real-time — it can't guarantee sub-millisecond scan times every cycle, which a PLC does natively. A PREEMPT_RT kernel tightens it considerably, and for genuinely hard loops we pair the Pi with a microcontroller co-processor that owns the deterministic timing while the Pi handles supervision, AI and connectivity. For most monitoring and supervisory control, soft real-time is already sufficient.

µs
PLC scan times, guaranteed every cycle
PREEMPT_RT
real-time-patched Linux kernel
MCU
co-processor owns the hard loop

01Why Linux isn't deterministic

A general-purpose OS schedules many tasks and can't guarantee a worst-case response. PLCs run a single, fixed scan cycle, so their timing is bounded by design. For closed-loop control measured in microseconds, that guarantee matters.

02The hybrid answer

Put the hard loop on a microcontroller (or a PREEMPT_RT-tuned core) and let the Pi do everything that tolerates jitter — vision, prediction, dashboards, OTA. You get determinism where it's required and Linux flexibility everywhere else.

Common questions

The ones we're asked on every first call.

For monitoring and supervisory control, almost always. For sub-millisecond motion or interlocks, no — use an MCU co-processor or keep that loop on a PLC.

Want this run on your numbers?

Send us your current stack and what it needs to do. A controls engineer replies with a candid one-page teardown — no deck, no sales call.

Request a teardown