fbpixel
Tags: , , , , ,

Whatever your electronics, programming or home automation project, you will certainly be using a communication protocol. Whether to program the microcontroller or to communicate with a sensor. This article presents various communication protocols commonly used on Arduino, Raspberry Pi and ESP8266/ESP32.

Serial communication bus

Serial port

USB

USB (Universal Serial Bus) is a communication bus standard used to exchange data between computer peripherals. The special feature of this standard is that it allows devices to be connected while they are in operation and enables automatic recognition of the peripheral).

UART

UART (Universal Asynchronous Receiver Transmitter) is the standard that specifies how data is sent over the serial port.

RS-232

The RS-232 protocol is a communications protocol that defines connectivity and enables asynchronous, duplex communication between two devices. The special feature of this protocol is that it uses voltages from 3 to 25 V to transmit data, making it a bus less sensitive to interference and noise.

(RS232/RS422/RS485)

I2C

The I2C communication bus is a protocol for connecting several “Master” devices to several “Slave” devices, enabling up to 128 devices to communicate. It enables asynchronous connections between several components to share information via a “common bus”. This protocol is generally used for board-to-board exchanges, but can also be used over longer distances.

SPI

SPI (Serial Peripheral Interface) is a serial data bus that operates in full-duplex mode, i.e. it can transmit and receive data at the same time. It uses a Master-Slave architecture, with slave selection via a dedicated line.

CAN

The CAN (Controller Area Network) bus is a serial communication bus widely used in the automotive industry. It allows multiplexing of different devices, enabling them to communicate via the same bus. This reduces the amount and complexity of wiring.

Ethernet

Ethernet is a wired communication protocol that exchanges data in high-speed packets.

(I2S)

MIDI

MIDI (Musical Instrument Digital Interface) is a communication protocol between electronic instruments, controllers and music software. It involves sending a series of bytes to specify the type of message and associated information (note, note length, instrument, etc.).

Wireless communication protocols

Bluetooth

BLE

The BLE (Bluetooth Low Energy) network is a Bluetooth network with low energy consumption.

Wifi

ESP-NOW

A low-power communication protocol developed by Espressif using 2.4GHz waves.

RF 433MHz

RF 2.4GHz

(Zigbee)

LoRaWAN

The Lora network (Long Range Wide-area network) is a radio network that enables low-power devices to communicate at low speeds. This makes it possible to have connected objects with significant autonomy.

You now have a complete overview of the wired and wireless communication protocols most commonly used in electronics and computing.