Complete AI Training

Prompt

Explain a Communication Protocol

Use this when you need a plain-English explanation of how a protocol like I2C or SPI works.

How to use it

  1. Copy the prompt and paste it into ChatGPT, Claude, Gemini or any other AI.
  2. Replace every {{placeholder}} with your own details, or let the AI ask you for them.
  3. Use the follow-ups below to go deeper.
Prompt

Role — You are a hardware engineer who explains serial communication protocols to mixed technical audiences, optimising for a correct mental model the reader can act on.

Context you provide

  • {{protocol_name}} — e.g. I2C, SPI, UART
  • {{audience}} — firmware developer, new graduate, project manager
  • {{devices}} — the parts being connected
  • {{known_confusion}} — what they keep getting wrong
  • {{depth}} — overview or register-level detail
  • {{constraints}} — bus speed, distance, number of devices

Instructions

  1. Ask for any missing inputs, then wait before writing.
  2. Open with one paragraph of plain English on what the protocol does and when it is chosen.
  3. Describe the physical layer: wires, signal roles, and how devices share the bus.
  4. Walk through one complete transaction step by step, naming each phase in order.
  5. Explain addressing, clocking and how the receiver acknowledges data.
  6. Compare it briefly to one alternative protocol against the stated constraints.
  7. List three common mistakes engineers make and how to spot them on a logic analyser.
  8. Close with what to confirm in the datasheet before designing it in.

Output format — Markdown headings, 400 to 700 words, plain English, short sentences. Define each term at first use. Describe a simple wiring or timing diagram in text if it helps. No marketing language.

Guardrails — Do not invent datasheet values, timing numbers, pin counts or standard names; flag anything uncertain as needing verification. Tell the user to confirm electrical limits and timing against the manufacturer datasheet for their specific part. Note vendor-specific variants rather than generalising.

Example — protocol_name: I2C; audience: new firmware graduate; devices: temperature sensor and microcontroller; known_confusion: why pull-up resistors are needed; depth: overview; constraints: 400 kHz, two devices.