> For the complete documentation index, see [llms.txt](https://docs.incari.com/incari-studio/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.incari.com/incari-studio/toolbox/communication/serial.md).

# Serial

## Introduction

The **Serial** **Nodes** allow the user to connect to serial devices -- like GPS devices -- via USB or serial ports using *Serial* *Communication*. *Serial* *Communication* sends single bits of data at a time, sequentially, through a communication channel/bus. To use the **Serial** **Nodes** in **Incari**, the user first needs to locate the [**Serial Attributes**](/incari-studio/modules/project-settings/serial.md) in **Project** **Settings** and add a `Connection`.

This form of **Communication** in **Incari** is available as a plugin and is enabled as default. However, in the case that it is disabled in the **Plugins Editor**, it will not appear in the **Project Settings** and render the **Serial Nodes** unavailable. Please refer to the [**Plugins Editor**](/incari-studio/modules/plugins.md) to find out more information.

### Serial Guideline

These are the guidelines for incorporating **Serial Communication** into a **Project**.

* To properly start a connection, see the [**General Guideline**](/incari-studio/toolbox/communication.md#general-guideline) on the Communications Introduction page.
* Once the connection has been established, there are several **Nodes** that cover important functions of **Serial Communication**.
  * [**On Serial Error**](/incari-studio/toolbox/communication/serial/events/onserialerror.md) executes when an error is received.
  * [**On Serial Packet Received**](/incari-studio/toolbox/communication/serial/events/onserialpacketreceive.md) executes when a **Serial** data **Packet** is received.
  * [**Serial Send Packet**](/incari-studio/toolbox/communication/serial/serialsendpacket.md) sends a **Serial** data **Packet**.
* To properly stop a connection, see the [**General Guideline**](/incari-studio/toolbox/communication.md#general-guideline) on the Communications Introduction page.

## Contents

* [**Events**](/incari-studio/toolbox/communication/serial/events.md)
  * [**On Serial Error**](/incari-studio/toolbox/communication/serial/events/onserialerror.md)
  * [**On Serial Packet Receive**](/incari-studio/toolbox/communication/serial/events/onserialpacketreceive.md)
  * [**On Serial Start**](/incari-studio/toolbox/communication/serial/events/onserialstart.md)
  * [**On Serial Stop**](/incari-studio/toolbox/communication/serial/events/onserialstop.md)
* [**Serial Send Packet**](/incari-studio/toolbox/communication/serial/serialsendpacket.md)
* [**Serial Start**](/incari-studio/toolbox/communication/serial/serialstart.md)
* [**Serial Stop**](/incari-studio/toolbox/communication/serial/serialstop.md)

## External Links

* [*Serial Communication*](https://en.wikipedia.org/wiki/Serial_communication) on Wikipedia.
* [*Learn about Serial Communication*](https://learn.sparkfun.com/tutorials/serial-communication/all) on SparkFun.
