Communication Protocols — Phase 1
Phase 1 • Communication Fundamentals 4 min read

Host vs Device

Every communication protocol needs a way to control who talks and who listens. Without defined roles, multiple devices could try to transmit at the same time, causing data corruption.

To solve this, most protocols assign two roles:

  • Host (Master) – Initiates and controls communication.
  • Device (Slave/Peripheral) – Waits for requests and responds when asked.
Host
MCU / CPU
Command ──▶ ◀── Data
Device
Sensor / Memory
Fig 1 — Host / Device Role
Role Who Responsibilities
HOST CPU / MCU Initiates transactions, drives timing, selects the target device
DEVICE Sensor / EEPROM / Display Waits silently, responds only when addressed, executes requested operations

What the Host Does

The host is the active controller (typically the microcontroller). It runs firmware to determine when and what to communicate, driving all operations on the bus:

  • Starts & Ends: Initiates and terminates every transaction.
  • Drives Timing: Generates the clock signal (e.g., SPI SCK, I2C SCL).
  • Selects Targets: Targets specific devices using addresses or select lines.
  • Controls Data: Issues commands and sends read/write requests.

Especially with multiple devices: without a host to coordinate timing, they could transmit simultaneously over the same wire. This causes a bus collision, overlapping the signals and completely corrupting the data.

We will explore how specific serial protocols (like UART, SPI, I2C, and CAN) address and coordinate these multiple devices in their respective dedicated articles.

What the Device Does

The device is the passive responder. It listens silently on the bus, executing commands and returning data only when explicitly addressed by the host:

  • Waits & Listens: Stays silent until selected by the host.
  • Responds on Demand: Transmits requested data back to the host.
  • Executes Operations: Performs actions (e.g., writes to registers, triggers measurements).

Examples: Temperature sensors, EEPROMs, displays, Wi-Fi chips, ADCs, and RTCs.

Quick Summary

  • Embedded networks coordinate communication by assigning two roles: Host and Device.
  • The Host acts as the active controller, starting transfers, driving timing, and selecting target devices.
  • The Device acts as a passive responder, staying silent until addressed by the host.
  • Without host coordination, signal collisions occur on shared wires, corrupting transmitted data.

Terminology: While the core concepts remain identical, the industry has shifted away from older "Master/Slave" terminology in modern datasheets and specifications to favor "Host/Device" or "Controller/Target".