# TCP Start

## Overview

![The TCP Start Node.](https://2561100106-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff6JZovzOqBctA4C1o76u%2Fuploads%2Fgit-blob-43548cb533a7c14dab6936a792a98a176b846b67%2Ftcpstart.png?alt=media)

The **TCP Start Node** starts a **TCP** connection that has already been set up in [**Project Settings**](https://docs.incari.com/incari-studio/2023.2/modules/project-settings/tcp-connection).

**TCP 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 **TCP Start** will not show up in the [**Toolbox**](https://docs.incari.com/incari-studio/2023.2/toolbox/overview). Please refer to the [**Plugins Editor**](https://docs.incari.com/incari-studio/2023.2/modules/plugins/communication/tcpconnectionsmanager) to find out more information.

It is important to note that while the **TCP Start Node** starts a **TCP** connection, it may not completely finish establishing said connection when the **Node** is executed. This could lead to the **Logic** attached to its **Output Pulse** to not work even though there is technically nothing wrong. In order to avoid this, it is highly suggested to use the [**On TCP Start Node**](https://docs.incari.com/incari-studio/2023.2/toolbox/communication/tcp/events/ontcpstart) instead. This way, the **Logic** will only execute once the **TCP** connection has definitely been established.

Again, the user must first use the **TCP Start Node** to open the connection. Separately, the **On TCP Start Node** can be used to execute the desired **Communication Logic**.

![TCP Start and On TCP Start Configuration](https://2561100106-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff6JZovzOqBctA4C1o76u%2Fuploads%2Fgit-blob-56faf0176514d0ecf5e7faced890b1cd8a835ad1%2Ftcpstartvsontcpstart.png?alt=media)

[**Scope**](https://docs.incari.com/incari-studio/2023.2/overview#scopes): **Project**, **Scene**.

## Attributes

![The TCP Start Node Attributes.](https://2561100106-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff6JZovzOqBctA4C1o76u%2Fuploads%2Fgit-blob-16f0c62dcee4c3b13de711219e10c032be12464f%2Ftcpstartatts.png?alt=media)

| Attribute       | Type          | Description                                                                                                                                                                                         |
| --------------- | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Configuration` | **Drop-Down** | The desired *TCP* server, which refers back to the selections made under *TCP* in the [**Project Settings**](https://docs.incari.com/incari-studio/2023.2/modules/project-settings/tcp-connection). |

## Inputs

| Input             | Type      | Description                                                           |
| ----------------- | --------- | --------------------------------------------------------------------- |
| *Pulse Input* (►) | **Pulse** | A standard **Input Pulse**, to trigger the execution of the **Node**. |

## Outputs

| Output             | Type      | Description                                                                                                                            |
| ------------------ | --------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| *Pulse Output* (►) | **Pulse** | A standard **Output Pulse**, to move onto the next **Node** along the **Logic Branch**, once this **Node** has finished its execution. |

## See Also

* [**TCP Stop**](https://docs.incari.com/incari-studio/2023.2/toolbox/communication/tcp/tcpstop)
* [**On TCP Start**](https://docs.incari.com/incari-studio/2023.2/toolbox/communication/tcp/events/ontcpstart)
