Blog
EtherCAT vs. CAN for Real-Time Control
October 7, 2026
Which One Actually Fits Your System?
“Which is more real-time, EtherCAT or CAN?” is a question that gets asked a lot, and the honest answer is that both are real-time — they just solve different real-time problems. CAN has been the backbone of deterministic embedded control for over three decades; EtherCAT was built two decades later specifically to push determinism and node count further than CAN's arbitration model allows. This guide compares them on the dimensions that actually matter when you're picking one for a new design, rather than treating “real-time” as a single number either protocol wins on outright.
CAN is deterministic through message priority arbitration — every node can attempt to transmit, and the highest-priority message wins the bus without collision, guaranteeing that critical messages get through within a bounded, calculable worst-case time. EtherCAT is deterministic through centrally-scheduled, hardware-processed frames — a single master orchestrates every cycle, and slaves process data as it flows past them in hardware, achieving much tighter cycle times at much higher node counts than CAN's arbitration model can sustain.
Neither mechanism is “more real-time” in the abstract. CAN's determinism scales well to distributed systems with modest node counts and long cable runs; EtherCAT's determinism scales well to centralized systems with many tightly synchronized nodes and short cycle time requirements.
CAN's real-time behavior comes from its non-destructive bitwise arbitration mechanism. When multiple nodes attempt to transmit simultaneously, each monitors the bus while transmitting its identifier bit by bit; a node sending a recessive bit while another sends dominant backs off immediately, without corrupting the bus. The result is that the message with the numerically lowest identifier — defined as highest priority — always wins and is transmitted without any retry or collision recovery needed.
This gives CAN a genuinely useful property: the worst-case latency for a given message priority is calculable in advance using established schedulability analysis (based on bus loading and message priorities), which is exactly why CAN became the standard for safety-relevant automotive and industrial control loops. The trade-off is that this arbitration model doesn't scale indefinitely — as node count and message traffic grow, lower-priority messages face longer and less predictable worst-case delays, and the classic CAN bus is capped at 1 Mbit/s (higher for CAN FD's data phase).
EtherCAT's real-time behavior comes from a different mechanism entirely: a single master issues one Ethernet frame per cycle, and that frame is processed on the fly by each slave's EtherCAT Slave Controller (ESC) hardware as it physically passes through — no arbitration, no collision, no retry logic, because there's only ever one node transmitting at a time (the master) and every slave's participation is a fixed, hardware-timed read/write as the frame passes.
Because there's no contention to resolve, EtherCAT's cycle time is a function of frame length, network size, and physical propagation delay — all of which are fixed and known in advance for a given network configuration, rather than being subject to variable bus loading the way CAN's worst-case latency is. This is how EtherCAT achieves cycle times of 100 microseconds or less with jitter under 1 microsecond even with a large number of nodes, a regime where CAN's message-based arbitration model isn't designed to operate.
| Aspect | CAN (Classic / CAN FD) | EtherCAT |
|---|---|---|
| Determinism mechanism | Priority-based bitwise arbitration | Centralized master scheduling, hardware frame processing |
| Typical cycle/update time | Milliseconds, application- and bus-load-dependent | ≤ 100 µs |
| Jitter | Bounded but higher — affected by bus loading and priority contention | Sub-microsecond, largely independent of node count |
| Max practical node count | Tens per segment | Hundreds per segment |
| Bandwidth | Up to 1 Mbit/s (classic), higher in CAN FD's data phase | Typically 100 Mbit/s |
| Topology | Linear bus, must be terminated at both ends | Line, tree, star, daisy-chain, ring |
| Node hardware cost | Low — CAN controller is standard on most MCUs | Higher — requires an EtherCAT Slave Controller (ASIC/FPGA) |
| Cable/connector cost | Low — twisted pair | Standard Ethernet cabling, moderate cost |
| Multi-master capability | Yes — any node can initiate transmission | No — strict single master per segment |
| Typical failure mode | Bus-off on excessive errors from one node | Frame loss detected by master; slave-level fault isolation via ESC |
| Best suited for | Distributed vehicle/machine networks, safety-relevant control with modest node counts | Centralized motion control, high node-count synchronized automation |
CAN's advantages aren't nostalgic — they're structural, and they matter for real design decisions:
Rather than treating this as a binary choice, ask these questions about the system:
It's also increasingly common to see both in the same system — a CAN or CANopen segment handling distributed, lower-frequency I/O, bridged into an EtherCAT backbone that handles the tightly synchronized motion control core. That hybrid pattern shows up often enough in mobile and off-highway equipment that it's worth designing for from the start rather than treating the choice as strictly either/or.
Whichever protocol a system settles on, the firmware layer carries real implementation weight beyond the wire protocol itself — timer handling, session/state management, and firmware update mechanisms all differ meaningfully between the two. If EtherCAT is the direction, our companion guides on what EtherCAT is at the protocol level and how EtherCAT firmware updates work over FoE go into the implementation detail this comparison doesn't have room for.
Simma Software builds real-time protocol stacks and flash bootloaders across CAN, CAN FD, LIN, UDS, J1939, CANopen, XCP, and EtherCAT — so whichever direction your architecture takes, the firmware layer is already proven in the field. Contact us to talk through your protocol selection or implementation.