# KNX\_Write\_DPT\_2x

## `KNX_Write_DPT_2x` (FB)

FUNCTION\_BLOCK KNX\_Write\_DPT\_2x EXTENDS SlaveBasicWr

#### Überblick

Sendefunktion für DPT 2.x (2-Bit Wert).

#### Eingänge

| Eingänge                  | Initialwert | Beschreibung                        |
| ------------------------- | ----------- | ----------------------------------- |
| `xUpdateSetp`             | *FALSE*     | Trigger für Sollwert-Aktualisierung |
| `xValue`                  | -           | Zu sendender Hauptwert (BOOL)       |
| `xPrio`                   | -           | Zu sendender Prioritätswert (BOOL)  |
| `xWriteVisu`              | -           | Trigger für einmaliges Senden       |
| `eDPT_Format`             | -           | DPT 2.x Format-Auswahl              |
| `byAdrGroup`              | *0*         | Gruppenadresse (0-255)              |
| `byAdrMiddleGroup`        | *0*         | Mittlere Gruppenadresse (0-7)       |
| `byAdrMainGroup`          | *0*         | Hauptgruppenadresse (0-31)          |
| `tTimeUpdateSetp`         | *T#0S*      | Zyklisches Update-Intervall         |
| `tPauseTimeUntilNextSend` | *T#3S*      | Sendepause                          |

#### Ausgänge

* `tNextWrite` (TIME): Zeit bis zum nächsten Schreibvorgang
* `xLastBusValue` (BOOL): Letzter empfangener Hauptwert
* `xControlBit` (BOOL): Letzter empfangener Kontrollbit (Priorität)

#### Verwendung

1. Wählen Sie das DPT 2.x Format mit `eDPT_Format`.
2. Setzen Sie den zu sendenden Hauptwert in `xValue` und den Prioritätswert in `xPrio`.
3. Konfigurieren Sie die Sendeoptionen:
   * Für zyklisches Senden: `tTimeUpdateSetp` > T#0S
   * Für ereignisbasiertes Senden: Nutzen Sie `xUpdateSetp` oder `xWriteVisu`
4. Überwachen Sie `xLastBusValue` für den letzten empfangenen Hauptwert.
5. Beachten Sie `xControlBit` für den letzten empfangenen Prioritätswert.

InOut:

| Scope       | Name                      | Type            | Initial    | Comment                                                                                                                                                    | Inherited from |
| ----------- | ------------------------- | --------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
| Input       | `itfKnxConnector`         | `IKnxConnector` |            | <p>IMasterConnector interface input to register/unregister<br>the FB to the List on the Master</p>                                                         | SlaveBasicWr   |
| Input       | `xEnable`                 | `BOOL`          | TRUE       |                                                                                                                                                            | SlaveBasicWr   |
| Output      | `sPhysicallAddressDevice` | `STRING(15)`    |            |                                                                                                                                                            | SlaveBasicWr   |
| Output      | `sGroupAddress`           | `STRING(15)`    |            |                                                                                                                                                            | SlaveBasicWr   |
| Input       | `xUpdateSetp`             | `BOOL`          | FALSE      | <p>Aktualisierung der Sollwerte ( bei jeder ansteigenden Flanke<br>)</p>                                                                                   |                |
| Input       | `xValue`                  | `BOOL`          |            |                                                                                                                                                            |                |
| Input       | `xPrio`                   | `BOOL`          |            |                                                                                                                                                            |                |
| Input Const | `xWriteVisu`              | `BOOL`          |            | Einmal Lessen                                                                                                                                              |                |
| Input Const | `eDPT_Format`             | DPT\_2x         |            | Enum DPT\_2x                                                                                                                                               |                |
| Input Const | `byAdrGroup`              | `BYTE`          | 0          | Groupaddress                                                                                                                                               |                |
| Input Const | `byAdrMiddleGroup`        | `BYTE`          | 0          | Middle-Group-Address                                                                                                                                       |                |
| Input Const | `byAdrMainGroup`          | `BYTE`          | 0          | Main-Group-Adress                                                                                                                                          |                |
| Input Const | `tTimeUpdateSetp`         | `TIME`          | TIME#0ms   | <p>Updateintervall für die Vorgänge, die durch den Eingang<br>‘xUpdateSetp’ beeinflusst werden 0 = kein automatisches<br>Update, > 0 zyklisches Update</p> |                |
| Input Const | `tPauseTimeUntilNextSend` | `TIME`          | TIME#3s0ms | Pause nach dem Senden 0 = kein pause                                                                                                                       |                |
| Output      | `tNextWrite`              | `TIME`          |            |                                                                                                                                                            |                |
| Output      | `xLastBusValue`           | `BOOL`          |            |                                                                                                                                                            |                |
| Output      | `xControlBit`             | `BOOL`          |            |                                                                                                                                                            |                |


---

# 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://support.powerio.com/hub/codesys-hvac/hvac-knx-library/functionblocks/knx_write_dpt_2x.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.
