Communication Protocols
This page features common communication protocols that are used both in embedded and software design. This includes protocols used between cores (hardware modules) inside an FPGA, between microcontrollers and other ICs on a circuit board, between two circuit boards in the same product, and between two products separated by a large distance.
If you are interested in protocols used between ICs on a circuit board, look at:
If you are interested in protocols used between two electronic devices in close proximity, look at:
If you are interested in wireless communication, look at:
If you are interested in protocols that use the TCP/IP suite, look at:
Check out the child pages for more information on each protocol.
Child Pages
  Addressing, parasitic power, sequence detection, bit bashing and more about the 1-wire protocol. 
 
  1-Wire Protocol 
   Addressing, parasitic power, sequence detection, bit bashing and more about the 1-wire protocol. 
 
  Topologies, standards, schematics, popular ICs, microcontroller interfaces, HART, filtering/buffering and more info about 4-20mA current loops. 
 
  4-20mA Current Loops 
   Topologies, standards, schematics, popular ICs, microcontroller interfaces, HART, filtering/buffering and more info about 4-20mA current loops. 
 
  Echoing, AT result codes, and more about the AT command protocol. 
 
  AT Commands 
   Echoing, AT result codes, and more about the AT command protocol. 
 
  ARM AMBA, address/control phases, data phases and more about the AXI bus. 
 
  AXI Bus 
   ARM AMBA, address/control phases, data phases and more about the AXI bus. 
 
  Bluetooth is a collection of short range wireless communication protocols, including Bluetooth Classic and Bluetooth Low Energy (BLE). This page covers standards, low energy (BLE), configurations, and more. 
 
  Bluetooth 
   Bluetooth is a collection of short range wireless communication protocols, including Bluetooth Classic and Bluetooth Low Energy (BLE). This page covers standards, low energy (BLE), configurations, and more. 
 
  Bit rates, arbitration, encoding, frame types, CAN base frame, CAN extended frame, USB adapters and more info about the CAN communication protocol. 
 
  CAN Protocol 
   Bit rates, arbitration, encoding, frame types, CAN base frame, CAN extended frame, USB adapters and more info about the CAN communication protocol. 
 
  Cellular communication protocols are those involving cellular networks. This includes GSM, CDMA, LTE, LTE Cat-M1, and NB-IoT. 
 
  Cellular Communication Protocols 
   Cellular communication protocols are those involving cellular networks. This includes GSM, CDMA, LTE, LTE Cat-M1, and NB-IoT. 
 
  Bus topologies, point-to-point, multi-drop, multipoint, and more about communication bus topologies. 
 
  Communication Protocol Theory 
   Bus topologies, point-to-point, multi-drop, multipoint, and more about communication bus topologies. 
 
  EasyScale is a 2-way, half-duplex, single-wire communication protocol by Texas Instruments used by some of it's LED driver ICs to allow a microcontroller to digitally control the LED current/PWM settings with a single wire. 
 
  EasyScale Protocol 
   EasyScale is a 2-way, half-duplex, single-wire communication protocol by Texas Instruments used by some of it's LED driver ICs to allow a microcontroller to digitally control the LED current/PWM settings with a single wire. 
 
  Ethernet is a group of wired communication standards that support LAN and WAN. This page covers connectors, magnetics, physical layer, MAC, standards, PoE, EtherCAT, popular chips, lwIP and more about the Ethernet protocol. 
 
  Ethernet Protocol 
   Ethernet is a group of wired communication standards that support LAN and WAN. This page covers connectors, magnetics, physical layer, MAC, standards, PoE, EtherCAT, popular chips, lwIP and more about the Ethernet protocol. 
 
  Framing, link configurations, and more about the High-Level Data Link Control (HDLC) protocol. 
 
  High-Level Data Link Control (HDLC) 
   Framing, link configurations, and more about the High-Level Data Link Control (HDLC) protocol. 
 
  A tutorial on the I2C communication protocol. 
 
  I2C Communication Protocol 
   A tutorial on the I2C communication protocol. 
 
  I2S is a synchronous, serial, PCM-based communication protocol used to transmit digital audio data between integrated circuits. This page covers the history, signals, MCU support, frameworks and libraries and more. 
 
  I2S Communication Protocol 
   I2S is a synchronous, serial, PCM-based communication protocol used to transmit digital audio data between integrated circuits. This page covers the history, signals, MCU support, frameworks and libraries and more. 
 
  A tutorial on the I3C communication protocol. 
 
  I3C Communication Protocol 
   A tutorial on the I3C communication protocol. 
 
  IEEE 2030 is a standard designed to promote interoperability between smart grid devices. 
 
  IEEE 2030.5 Smart Grid Communication Protocol 
   IEEE 2030 is a standard designed to promote interoperability between smart grid devices. 
 
  History, topology, uses, connections and more info about the IEEE-488 (GPIB) communication bus. 
 
  IEEE-488 (GPIB) 
   History, topology, uses, connections and more info about the IEEE-488 (GPIB) communication bus. 
 
  Packet types and more about the IO-Link protocol. 
 
  IO-Link Protocol 
   Packet types and more about the IO-Link protocol. 
   IoT Pairing Methods    
  When you connect a new IoT device to your network, you need to pair it somehow. Many of the devices lack the input method and display to be able to select networks and enter in credentials like you would on a computer or smartphone (e.g. a smart plug may have just a single button for user input), and users want a simple and quick way to pair devices. A few pairing methods are commonly used. This page covers EZ mode and AP mode. 
  IoT Pairing Methods 
   When you connect a new IoT device to your network, you need to pair it somehow. Many of the devices lack the input method and display to be able to select networks and enter in credentials like you would on a computer or smartphone (e.g. a smart plug may have just a single button for user input), and users want a simple and quick way to pair devices. A few pairing methods are commonly used. This page covers EZ mode and AP mode. 
 
  Info on the infrared-based IrDA communication protocol. 
 
  IrDA Communication Protocols 
   Info on the infrared-based IrDA communication protocol. 
 
  Bit rates, transmission distances, node addressing, standards, devices and more on the LIN communication protocol. 
 
  LIN Protocol 
   Bit rates, transmission distances, node addressing, standards, devices and more on the LIN communication protocol. 
 
  A tutorial on the LON (ANSI709.2) communication protocol. 
 
  LON (ANSI709.2) Communication Protocol 
   A tutorial on the LON (ANSI709.2) communication protocol. 
 
  Overview of the LVDS (Low-Voltage Differential Signalling) communication protocol. 
 
  LVDS (Low-Voltage Differential Signalling) 
   Overview of the LVDS (Low-Voltage Differential Signalling) communication protocol. 
 
  Info on the MIPI CSI communication protocol. 
 
  MIPI CSI Communication Protocol 
   Info on the MIPI CSI communication protocol. 
 
  Info about the Modbus communication protocol. 
 
  Modbus Protocol 
   Info about the Modbus communication protocol. 
 
  MQTT is a lightweight publish/subscribe communications protocol that uses TCP/IP (and other secondary transport mechanisms) that is a popular choice for IoT communications. This page covers the history, brokers, clients, Mosquitto, Paho, embedded MQTT clients and more. 
 
  MQTT Protocol 
   MQTT is a lightweight publish/subscribe communications protocol that uses TCP/IP (and other secondary transport mechanisms) that is a popular choice for IoT communications. This page covers the history, brokers, clients, Mosquitto, Paho, embedded MQTT clients and more. 
 
  The Multi-Drop Bus (MDB) is a serial communication protocol used with the vending machine industry. 
 
  Multi-Drop Bus Communication Protocol 
   The Multi-Drop Bus (MDB) is a serial communication protocol used with the vending machine industry. 
 
  Near Field Communication (NFC) is a short-range wireless communication technology that allows devices to exchange data over a distance of a few centimetres. 
 
  Near Field Communication (NFC) 
   Near Field Communication (NFC) is a short-range wireless communication technology that allows devices to exchange data over a distance of a few centimetres. 
 
  NMEA is a readable (ASCII-encoded) serial communication protocol. Commonly used for sensors such as GPS. 
 
  NMEA Protocol 
   NMEA is a readable (ASCII-encoded) serial communication protocol. Commonly used for sensors such as GPS. 
 
  Layers, lanes, memory, BARs, usage on Windows, and more info about the PCI Express (PCIe) communication protocol. 
 
  PCI Express (PCIe) 
   Layers, lanes, memory, BARs, usage on Windows, and more info about the PCI Express (PCIe) communication protocol. 
 
  Info on power line communication protocols. 
 
  Power Line Protocols 
   Info on power line communication protocols. 
 
  Standards, transmission distances, baud rates, transceivers, high-level protocols and more info about the PROFIBUS communication protocol. 
 
  PROFIBUS 
   Standards, transmission distances, baud rates, transceivers, high-level protocols and more info about the PROFIBUS communication protocol. 
 
  Pinout, revisions, flow control, transmission distances, interfaces, driver ICs, and more about the RS-232 communication protocol. 
 
  RS-232 Protocol 
   Pinout, revisions, flow control, transmission distances, interfaces, driver ICs, and more about the RS-232 communication protocol. 
   RS-422 Protocol    
  Standards, transmission distances, baud rates, transceivers, high-level protocols and more info about the RS-422 communication protocol. 
  RS-422 Protocol 
   Standards, transmission distances, baud rates, transceivers, high-level protocols and more info about the RS-422 communication protocol. 
   RS-485 Protocol    
  Standards, transmission distances, baud rates, transceivers, high-level protocols and more info about the RS-485 communication protocol. 
  RS-485 Protocol 
   Standards, transmission distances, baud rates, transceivers, high-level protocols and more info about the RS-485 communication protocol. 
   SDQ Protocol    
  SDQ Protocol    
  
  The Simple Network Management Protocol (SNMP) is a protocol used for managing devices across an IP network. It allows for both monitoring and control of the network devices. 
 
  Simple Network Management Protocol (SNMP) 
   The Simple Network Management Protocol (SNMP) is a protocol used for managing devices across an IP network. It allows for both monitoring and control of the network devices. 
   SMBus Communication Protocol    
  SMBus Communication Protocol    
    SPI Communication Protocol    
  SPI Communication Protocol    
  
  Trivial File Transfer Protocol (TFTP) is a lightweight file transfer protocol that runs atop of UDP. It is commonly used in embedded bootloaders to load firmware images across a local area network (LAN). 
 
  Trivial File Transfer Protocol (TFTP) 
   Trivial File Transfer Protocol (TFTP) is a lightweight file transfer protocol that runs atop of UDP. It is commonly used in embedded bootloaders to load firmware images across a local area network (LAN). 
   UART Communication Protocol    
  UART (Universal Asynchronous Receiver/Transmitter) is a low-voltage, positive-rail only, microcontroller friendly version of the RS-232 protocol designed for IC to IC communication and short-distance wire-based communications. 
  UART Communication Protocol 
   UART (Universal Asynchronous Receiver/Transmitter) is a low-voltage, positive-rail only, microcontroller friendly version of the RS-232 protocol designed for IC to IC communication and short-distance wire-based communications. 
   Ultra-wide Band (UWB)    
  UART (Universal Asynchronous Receiver/Transmitter) is a low-voltage, positive-rail only, microcontroller friendly version of the RS-232 protocol designed for IC to IC communication and short-distance wire-based communications. 
  Ultra-wide Band (UWB) 
   UART (Universal Asynchronous Receiver/Transmitter) is a low-voltage, positive-rail only, microcontroller friendly version of the RS-232 protocol designed for IC to IC communication and short-distance wire-based communications. 
   USB Protocol    
  USB (Universal Serial Bus) is a communication protocol for connecting electronic devices together. 
  USB Protocol 
   USB (Universal Serial Bus) is a communication protocol for connecting electronic devices together. 
   Visible Light Communication (VLC)    
  Visible Light Communication (VLC)    
    Z-Wave    
  Z-Wave