What are Communication Protocols & Their Working

In the digital world, communication protocols create many rules. For instance, on the Internet, the formation of these protocols can be done by groups such as the association of WWW (World Wide Web) or W3C & the IETF (Internet Engineering Task) assists in providing worldwide operations & limits different types of liability as well as vulnerabilities within these technologies. Communication protocol plays a key role when HTTP turns into HTTPS otherwise an extensive use of SSL (Secure Sockets Layer) certificate becomes the standard. Other types of protocols use the data packets within global network routes and sometimes its looks like particle physics. So, technology is advancing day by day, so different communication protocols are used in advanced networks. The Internet of Things (IoT) assures the latest developing communications protocols to connect the wide set of devices to a universal network. This article discusses an overview of communication protocols in embedded systems.

What are Communication Protocols?

The proper descriptions of digital message formats as well as rules are known communication protocols. The main function of these protocols is to exchange messages from one computer system to another. These are significant in telecommunications systems as they consistently send and receive messages. These protocols cover error detection & correction, signaling, and authentication. They can also explain the semantics, syntax & brings analog & digital communications together.


Communication Protocols
Communication Protocols

The implementation of these protocols can be done within hardware as well as software. So communications protocols are available around thousand types which are used all over in analog & digital communications, so computer networks cannot be present without them.

Introduction

  • Protocol: A set of rules and regulations is called a protocol.
  • Communication: Exchange of information from one system to another system with a medium is called communication.
  • Communication Protocol: A set of rules and regulations that allow two electronic devices to connect to exchange the data with one and another.

Why is Communication Protocol Important?

Communication protocols assist varied network devices to converse with each other by transmitting the analog signals, digital signals, different files & process the data from one device to other devices. These types of protocols are applicable in telecommunication & computer networks where suitable rules are executed to transmit information from source to destination. The most vital protocols within networking are TCP (Transmission Control Protocol) & User datagram protocol (UDP).

Types of Communication Protocols

There are two types of communication protocols which are classified below:


  • Inter System Protocol
  • Intra System Protocol

Inter System Protocol

The inter-system protocol using to communicate the two different devices. Like communication between computer to microcontroller kit. The communication is done through an inter bus system.

Inter Bus System Protocols
Inter Bus System Protocols

The different categories of intersystem protocol mainly include the following.

  • UART Protocol
  • USART Protocol
  • USB Protocol

UART Protocol

UART stands for a universal asynchronous transmitter and receiver. UART Protocols is a serial communication with two wired protocols. The data cable signal lines are labeled as Rx and Tx. Serial communication is commonly used for transmitting and receiving the signal. It is transferred and receives the data serially bit by bit without class pulses. The UART takes bytes of data and sends the individual bits in a sequential manner.

UART is a half-duplex protocol. Half-duplex means transferring and receiving the data but not at the same time. Most of the controllers have hardware UART on board. It uses a single data line for transmitting and receiving the data. It has one start bit, 8-bit data and a one-stop bit mean the 8-bit data transfer one’s signal is high to low.

Ex: Emails, SMS, Walkie-talkie.

USART Protocol

USART stands for a universal synchronous and asynchronous transmitter and receiver. It is a serial communication of a two-wire protocol. The data cable signal lines are labeled as Rx and TX. This protocol is used to transmitting and receiving the data byte by byte along with the clock pulses. It is a full-duplex protocol that means transmitting and receiving data simultaneously to different board rates. Different devices communicate with microcontroller to this protocol.

Ex:-Telecommunications.

USB Protocol

USB stands for universal serial bus. Again it is a serial communication of two-wire protocol. The data cable signal lines are labeled D+ and D-. This protocol is used to communicate with the system peripherals.USB protocol is used to send and receive the data serially to the host and peripheral devices.USB communication requires driver software that is based on the functionality of the system.USB devices can transfer data on the bus without any request on the host computer.

Now a day’s most devices are using this technique for communicating with USB protocol. Like a computer to communicate with an ARM controller using USB. USB transfer the data to different modes .first one is slow speed mode 10kbps to 100 kbps; the second one is full speed mode 500kbps to 10mbps, high-speed mode 25mbps to 400 Mbps.USB maximum cable length of 4 meters.

Ex: Mouse, Keyboard, Hubs, switches, pen drive.

Differences Between the Inter System Protocols

The intersystem protocols mainly include UART, USART, and USB

UARTUSART

USB

The term UART stands for Universal Asynchronous Transmitter and ReceiverThe term USART stands for Universal Synchronous and Asynchronous Data Transmitter and ReceiverThe term USB stands for Universal Serial Bus
UART mainly includes two wire-based protocols like transmitter and receiverUSART is a two-wire protocol like Transmitter and ReceiverUSB is a two-wire protocol like D+ & D-
It transmits as well as receives pockets of data by byte without classes pulseIt transmits and receives a block of data through classes pulsesIt transmits and receives the data through clock pulses
UART is a half-duplex communicationUSART is a full-duplex communicationUSB is also full-duplex communication
UART is slow as compared to USARTUSART is slow as compared to USBIt is fast as compared to USART and UART

Intra System Protocol

The Intra system protocol is used to communicate the two devices within the circuit board. While using these intra system protocols, without going to intrasystem protocols we will expand the peripherals of the microcontroller. The circuit complexity and power consumption will be increased by using the intrasystem protocol. Using intra system protocols circuit complexity and power consumption, the cost is decreased and it is very secure to accessing the data.

Intra System Protocols
Intra System Protocols

The different categories of intrasystem protocol mainly include the following.

  • I2C Protocol
  • SPI Protocol
  • CAN Protocol

I2C Protocol

I2C stands for the inter-integrated circuit and it requires only two wires connecting all peripherals to the microcontroller. I2C requires two wires SDA (serial data line) and SCL (serial clock line) to carry information between devices. It is a master to a slave communication protocol. Each slave has a unique address. The master device sends the address of the target slave device and reads/writes the flag. The address matches any slave device that the device is ON, the remaining slave devices are disabled mode.

Once the address is match communication proceed between the master and that slave device and transmitting and receiving the data. The transmitter sends 8-bit data, the receiver replies 1-bit of acknowledgment. When the communication is completed master issues the stop condition. The I2C bus was developed by Philips Semiconductors. Its original purpose is to provide an easy way to connect CPU to peripherals chips.

Peripheral devices in embedded systems are often connected to the microcontroller as memory-mapped devices. I2C requires only two wires for connecting all the peripherals to the microcontroller. These active wires, called SDA and SCL, are both bidirectional. SDA line is a serial data line and the SCA line is a serial clock line.

I2C Pull-up Resistors

Why given the pull-up resistors in I2C SCL and SDA line.

  • Both SDA and SCL lines are open-drain drivers.
  • It can drive output low canot driver it high.
  • For the lines to be able to go high you must provide pull-up resistors

SPI Protocol

SPI stands for the serial peripheral interface. It is one of the serial communication protocol developed by Motorola. Sometimes SPI protocol is also called a 4-wire protocol. It requires four wires MOSI, MISO, SS, and SCLK.SPI protocol used to communicate the master and slave devices. The master first configures the clock using a frequency.

The master then selects the particular slave device for communication by pulling the chip select button. That particular device is selected and starts the communication between the master and that particular slave. The master selects only one slave at a time. It is a full-duplex communication protocol. Not limited to 8-bit words in the case of bit transferring.

CAN Protocol

CAN stands for the controller area network. It is a serial communication protocol. It requires two wires CAN High (H+) and CAN low (H-).  It was developed by the Robert bosh company in 1985 for in-vehicle networks. It is based on a message-oriented transmission protocol.

Differences Between the Intra System Protocols

The intra system protocols mainly include I2C, SPI, and CAN

I2CSPI

CAN

I2C is an inter-integrated circuitSPI stands for serial peripheral interfaceThe CAN stands for controller area network
It is implemented by PhilipsSPI is developed by MotorolaCAN is developed by Bosch
I2C is a half-duplex protocolSPI is a full-duplex protocolCAN is a full-duplex protocol
SynchronizationSynchronizationSynchronization
It is a two-wire protocol like SCL & SDLIt is a four-wire protocol like SCL, MISO, MOSI & SSIt is a two-wire protocol like CANH+ and CAN H-
It is a multi-master protocolIt is a single master protocolIt is a multi-master protocol
It is used in the circuit boardIt is used in the circuit boardIt is used in two circuit board

Communication Protocols in IoT

The IoT based devices are more susceptible to threats. So these security loopholes can be reduced by using the correct protocols. Communication protocols in IoT are types of communication that ensure the finest security toward the data being exchanged among the IoT connected devices.

The connection of these devices can be done through an IP network otherwise a non IP network but, there is a disparity within their power, range & memory used. The connection throughout IP networks is difficult & takes huge memory as well as power from these devices as the range is not a trouble. Alternatively, Bluetooth which is known as non-IP networks needs low power and memory however they have a limitation in the range.

The main benefits of IoT communication protocols are high quality, credibility, interoperability, innovation flexibility & global scalability. IoT protocols are available in two types mainly IoT network protocols and IoT data protocols.

The list of Top 10 IoT Communication Protocols includes the following.

  • WiFi
  • SigFox
  • Bluetooth
  • LoRaWAN
  • NFC (Near Field Communication)
  • Z wave
  • Zigbee
  • OPC- UA
  • Cellular
  • MQTT

Data Communication Protocols

Data communication protocols are very significant for communication because they are used for understanding the networks or computers or devices to each other.

These types of protocols use typical rules as well as methods like a common language to interact with computers or networks to each other. For instance, if a user wants to send an e-mail to another, then the user will create the e-mail on his personal computer by including the details along with the message and attachments.
Once the user sends the e-mail, then immediately multiple actions can take place so that the receiver gets the email. The message moves over the network and reaches the recipient. These protocols provide the information on how the note will be enclosed so that it can move over the system, how the receiver computer can verify for errors, etc

PLC Communication Protocols

The following primary communication protocols are used for the PLC as well as other connections of the network which supports through different PLC software products. These protocols mainly depend on the basic three parts like baud rate, length of network & the number of nodes. The list of PLC communication protocols includes the following.

  • Profibus
  • Interbus
  • ControlNet
  • ProfiNet
  • CompoNet
  • DirectNet
  • Modbus
  • MelsecNet
  • EtherCAT
  • DF-1 Protocol
  • Optomux
  • Host Link Protocol
  • RAPIENet
  • therNet/IP
  • Mechatrolink
  • PPI- Point to Point
  • Ethernet Powerlink
  • Multi-Point Interface (MPI)
  • Data Highway (DH)
  • Actuator Sensor Interface (ASI)
  • DeviceNet
  • Highway Addressable Remote Transducer Protocol (HART)
  • Ethernet Global Data (EGD)
  • Factory Interface Network Service Protocol (FINS)
  • Open Smart Grid Protocol (OSGP)
  • Recommended Standard (RS-232, RS- 422, and RS-485) Protocols
  • Bristol Standard Asynchronous Protocol (BSAP)
  • Distributed Network Protocol (DNP3)
  • Service Request Transport Protocol (SRTP)
  • Smart Distributed System Protocol (SDS)
  • Process Image Exchange Protocol (PIEP)

Characteristics of PLC Communication Protocols

The standard protocols are used once PLC modules are connected over the network. The different types these protocols mainly supports different speed, distance & the number of connecting devices.

  • Ethernet protocol baud rate is 100 Mb/s, length is Few Km and 255 nodes.
  • RS-485 baud rate is 10 Kb/s, the length is 1.2 Km, and 32 nodes
  • Profibus protocol baud rate is 5-12 Mb/s, the length is 15 Km and 127 nodes.
  • RS-232 baud rate is 19.2 Kb/s, the length is 10m and 1 node
  • MPI protocol baud rate is 19.2- 38.4 Kb/s, the length is 50 m and 32 nodes.
  • PC Adapter baud rate is 9600 Kb/s, length is 15 m, and 1 node
  • PPI protocol baud rate is 187.5 Kb/s, the length is 500 m, and 1 node.
  • USB Adapter baud rate is 57.6 Kb/s, the length is 10 m and 1sec
  • DH protocol baud rate is 230.4 Kb/s, the length is 3.048 Km, and 64 nodes
  • Device Net protocol braud rate is 500 Kb/s, the length is 0.487, and 64 nodes
  • Control Net protocol baud rate is5 Mb/s, the length is 30 Km

Communication Protocols in Cloud Computing

The cloud supports two communication protocols for communication as well as connection like MQTT and HTTP. The communication of these devices can be done through Cloud IoT Core across a bridge either the HTTP or the MQTT. These bridges are central components in Cloud IoT Core. Once you create a registry of a device, then you can choose protocols to allow HTTP, MQTT, etc. The standard protocol like MQTT is used frequently and it is supported through embedded devices. This protocol is common in the interactions of the machine to machine.

HTTP is a connectionless protocol, so devices do not maintain a connection to the cloud IoT core. As an alternative, they send requests as well as get responses. The protocols of cloud computing are a set of rules that permit two electronic elements to unite as well as exchange the data with each other. It is mainly used for communication, storage, encryption, networks, decryption, security, management of user login, etc. Some cloud computing protocols include

  • Gossip Protocol
  • MTP (Media Transfer Protocol)
  • CLNP (Connection Less Network Protocol)
  • CEE (Coverage Enhanced Ethernet Protocol)
  • SRP (State Routing Protocol)
  • SSHP (Secure Shell Protocol)
  • IGMP (Internet Group Management Protocol)

Thus, this is all about an overview of communication protocols, types, differences between inter-system protocol and intrasystem protocol. Here is a question for you, what are Arduino communication protocols?

7 Comments

  1. Prashant Patil says:

    Which one is better protocol from above all protocol for communicating with microcontroller???
    Pls suggest

    1. Tarun Agarwal says:

      Hi Prashant
      I2C is better because it needs only two wires for connecting all peripherals to the microcontroller like serial data line and a serial clock line.

  2. Akshit Bhangale says:

    can you please suggest me some book to study these topics in depth

  3. mobile2computer says:

    Nice information will help me in the exams

  4. Nice piece of information but poorly worded making it difficult to understand, Needs improvement.

  5. Rajesh ch says:

    We can use UART as Full duplex also……

    1. Team ElProCus says:

      – Full duplex means both transferring and receiving data at the same time.
      – But in UART communication transferring and receiving data has different baud rates, where transferring data at 9600 baud rate and receiving data at 115220 baud rates. The UART communication clock synchronization is not at same time. ii will cause data corruption.
      – Most chips do not support it. Some UART’s support this kind of operation.
      – Only ZILOG microcontroller family is supported as per my knowledge.

Add Comment