Communication Protocols · Interview question

Why are UART, SPI, and I2C all poor choices for sending data across a machine or vehicle?

A strong answer

They're designed as short-haul, on-board buses using single-ended (ground-referenced) signaling, which doesn't tolerate distance or electrical noise. Over long wires, capacitance slows the edges (especially I2C, whose open-drain pull-ups already limit rise time), ground potential can differ between distant boards (single-ended signals reference a shared ground that may not be truly shared), and there's little to no noise immunity or robust error recovery, a glitch corrupts data with at best a parity/framing flag (UART) or nothing (SPI). For distance and noisy environments you use differential buses: CAN and RS-485 send each bit as the voltage difference between two wires, which rejects common-mode noise and tolerates ground shifts, support multi-drop topologies, and (for CAN) add arbitration and strong error detection/recovery designed for vehicles and industrial settings. So crossing a chassis or a factory floor moves you from the chip-to-chip trio to a differential field bus; USB is the answer when you instead need high-bandwidth to a host.

What a weak answer sounds like

You know the answer. Do you know what gets you dinged?

Pro breaks down the answer most candidates actually give to this question — and the specific reason an interviewer marks it down. It’s the difference between sounding correct and sounding senior, on all 472 questions.

From the lesson

Choosing UART, SPI, or I2C

A side-by-side comparison and a decision framework: pick by speed, device count, pin budget, and distance, and know when none of the three fits and you need CAN or RS-485.

More Choosing UART, SPI, or I2C questions

Browse all 472 interview questions
Why are UART, SPI, and I2C all poor choices for sending data across a machine or vehicle? | EmbeddedPrep.io