# CANopen Send

This **Node** has different versions depending on which `Protocol` is selected. This can be either *PDO* or *SDO*. Find in the tabs below the documentation for both versions.

{% tabs %}
{% tab title="PDO" %}
**Overview**

![The CANopen Send: PDO Node.](/files/qnmTEiStEjabOoCv8IbZ)

The **CANopen Send Node** is used to send a message once a **CANopen** connection has been selected from the **Drop-down Menu**. Here, the *PDO* `protocol` has been chosen.

[**Scope**](/incari-studio/toolbox/overview.md#scopes): **Project**, **Scene**.

## Attributes

![The CANopen Send: PDO Node Attributes.](/files/4H9Y3EJcTHBBhTg2Qqel)

| Attribute           | Type                               | Description                                                                                                                                                                                                                    |
| ------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `Configuration`     | **Drop-down**                      | The identifying connection name that will be used, which has already been set up in the [**Project Settings**](/incari-studio/modules/project-settings/canopen.md).                                                            |
| `Protocol`          | **Drop-down**                      | The desired protocol to use when sending the message. Here, `PDO` has been chosen. After selecting this, `Index` and `Subindex` will provide values.                                                                           |
| `Is Custom Message` | **Bool**                           | Can be toggled on or off depending on whether it is a custom message or not. Toggling it on changes the `Index` and `Subindex` into editable input fields allowing values from 0-FFFF for the former and 0-255 for the latter. |
| `Index`             | **Drop-down**                      | The index of the signal. Values depend on which `Protocol` has been selected.                                                                                                                                                  |
| `Subindex`          | **Drop-down**                      | The subindex of the signal. Values depend on which `Index` has been selected.                                                                                                                                                  |
| `CANopen Type`      | **Defined by previous selections** | The value type to be sent which is determined by index and subindex selection.                                                                                                                                                 |
| `Message Name`      | **String**                         | A custom name which remains read-only.                                                                                                                                                                                         |
| `Type`              | **String**                         | A message type which remains read-only, unless `Is Custom Message` is set to *true*.                                                                                                                                           |

## Inputs

| Input             | Type                                     | Description                                                           |
| ----------------- | ---------------------------------------- | --------------------------------------------------------------------- |
| *Pulse Input* (►) | **Pulse**                                | A standard **Input Pulse**, to trigger the execution of the **Node**. |
| `Message`         | **Any (Defined by previous selections)** | The value to be sent.                                                 |

## 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. |
| {% endtab %}       |           |                                                                                                                                        |

{% tab title="SDO" %}
**Overview**

![The CANopen Send: SDO Node.](/files/6HbHhkw60bZvY4kpUBAP)

The **CANopen Send Node** is used to send a message once a **CANopen** connection has been selected from the **Drop-down Menu**. Here, the *SDO* `Protocol` has been chosen.

[**Scope**](/incari-studio/toolbox/overview.md#scopes): **Project**, **Scene**.

## Attributes

![The CANopen Send: SDO Node Attributes.](/files/OLtlC0qJIJBFzbg8GuBK)

| Attribute           | Type                               | Description                                                                                                                                                                                                                    |
| ------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `Configuration`     | **Drop-down**                      | The identifying connection name that will be used, which has already been set up in the [**Project Settings**](/incari-studio/modules/project-settings/canopen.md).                                                            |
| `Protocol`          | **Drop-down**                      | The desired protocol to use when sending the message. Here, `SDO` has been chosen. After selecting this, `Index` and `Subindex` will provide values.                                                                           |
| `Is Custom Message` | **Bool**                           | Can be toggled on or off depending on whether it is a custom message or not. Toggling it on changes the `Index` and `Subindex` into editable input fields allowing values from 0-FFFF for the former and 0-255 for the latter. |
| `Index`             | **Drop-down**                      | The index of the signal. Values depend on which `Protocol` has been selected.                                                                                                                                                  |
| `Subindex`          | **Drop-down**                      | The subindex of the signal. Values depend on which `Index` has been selected.                                                                                                                                                  |
| `CANopen Type`      | **Defined by previous selections** | The value type to be sent which is determined by index and subindex selection.                                                                                                                                                 |
| `Message Name`      | **String**                         | A custom name which remains read-only.                                                                                                                                                                                         |
| `Type`              | **String**                         | A message type which remains read-only.                                                                                                                                                                                        |

## Inputs

| Input             | Type                                     | Description                                                           |
| ----------------- | ---------------------------------------- | --------------------------------------------------------------------- |
| *Pulse Input* (►) | **Pulse**                                | A standard **Input Pulse**, to trigger the execution of the **Node**. |
| `Message`         | **Any (Defined by previous selections)** | The value to be sent.                                                 |

## 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. |
| {% endtab %}       |           |                                                                                                                                        |
| {% endtabs %}      |           |                                                                                                                                        |

## See Also

* [**CANopen Start**](/incari-studio/toolbox/communication/canopen/canopenstart.md)
* [**CANopen Stop**](/incari-studio/toolbox/communication/canopen/canopenstop.md)

## External Links

* Explanation of [*PDO and SDO*](https://community.element14.com/learn/learning-center/the-tech-connection/w/documents/4195/how-does-the-canopen-network-protocol-work).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.incari.com/incari-studio/toolbox/communication/canopen/canopensend.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
