---
title: "KNX Group Object DPT8"
canonical: "https://docs.cuesystem.com/space/CVCHELP/525336592/KNX%20Group%20Object%20DPT8"
format: markdown
---
> Macro (toc)

---

# Description

KNX Group Object DPT8 is defined for transmitting signed values from -32 768 up to 32 767. As for 1 octet with a sign, negative values are transferred as two’s complement.

|  |  |  |
| --- | --- | --- |
|  | Octet 2 - MSB | Octet 1 - LSB |
| Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| Field | Signed Value |

# DPT Dimensions

|  |  |  |  |  |
| --- | --- | --- | --- | --- |
| DPT Dimensions | Name | Range | Unit | Resolution |
| 8.001 | pulses difference | -32 768 ÷ 32 767 | pulses | 1 pulse |
| 8.002 | time lag (ms) | -32 768 ÷ 32 767 ms | ms | 1 ms |
| 8.003 | time lag (10 ms) | -327,68 ÷ 327,67 s | ms | 10 ms |
| 8.004 | time lag (100 ms) | -3 276,8 ÷ 3 276,7 s | ms | 100 ms |
| 8.005 | time lag (s) | -32 768 ÷ 32 767 s<br>(≅ 9,1 h) | s | 1 s |
| 8.006 | time lag (min) | -32 768 ÷ 32 767 min<br>(≅ 22,7 d) | min | 1 min |
| 8.007 | time lag (h) | -32 768 ÷ 32 767 h<br>(≅ 3,7 y) | h | 1 h |
| 8.010 | percentage difference (%) | -327,68 ÷ 327,67 % | % | 0,01 % |
| 8.011 | rotation angle (°) | -32 768° ÷ 32 768° | ° | 1° |

# WriteValue

This function transmits the KNX telegram including the newvalue in the range

-32768 ÷ 32767 to the group address defined in the driver property. This function returns True if the function success, else it returns False. A function GetLastError returns the error number that occurred while executing the command. The errors that can happen: <u>[10000](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10000)</u>, <u>[10002](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10002)</u>, <u>[10003](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10003)</u>, <u>[10004](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10004)</u>, <u>[10005](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10004)</u>.

#### Syntax

```visualbasic
Function WriteValue (
  newvalue As Long,
  Optional highpriority As Boolean := False) 
As Boolean
```

#### Parameters

newvalue

Long It is the new value sent to KNX bus in range -32768 ÷ 32767.

highpriority

Boolean Optional, defaults to False. If it is False, then the command is applied with standard priority on the KNX bus. If it is True, then the command is applied with a high priority on the KNX bus.

#### Return value

Boolean This function returns True on success or False if an error occurs. A function GetLastError returns the error number.

# WriteTime

This function transmits the KNX telegram including data converted from parameter newtime to the group address defined in the driver property. Programmer friendly parameter newtime is used in this function. This format is suitable for DPT Dimension 8.002 to 8.007, where the time scale is defined. This function returns True if the function success, else it returns False. A function GetLastError returns the error number that occurred while executing the command. The errors that can happen: <u>[10000](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10000)</u>, <u>[10002](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10002)</u>, <u>[10003](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10003)</u>, <u>[10004](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10004)</u>, <u>[10005](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10004)</u>.

#### Syntax

```visualbasic
Function WriteTime (
  newtime As Time,
  Optional highpriority As Boolean := False) 
As Boolean
```

#### Parameters

newtime

Time It is the new value sent to the KNX bus. Range depends on selected DPT Dimension.

highpriority

Boolean Optional, defaults to False. If it is False, then the command is applied with standard priority on the KNX bus. If it is True, then the command is applied with a high priority on the KNX bus.

#### Return value

Boolean This function returns True on success or False if an error occurs. A function GetLastError returns the error number.

# WritePercentage

This function transmits the KNX telegram including data converted from parameter percentage to the group address defined in the driver property. Programmer friendly parameter percentage in range -327,68 ÷ 327,67 (%) is used in this function. This format is suitable for DPT Dimension 8.010. This function returns True if the function success, else it returns False. A function GetLastError returns the error number that occurred while executing the command. The errors that can happen: <u>[10000](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10000)</u>, <u>[10002](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10002)</u>, <u>[10003](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10003)</u>, <u>[10004](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10004)</u>, <u>[10005](/wiki/spaces/CVCHELP/pages/510525445/Command+errors#10004)</u>.

#### Syntax

```visualbasic
Function WritePercentage (
  percentage As Double,
  Optional highpriority As Boolean := False) 
As Boolean
```

#### Parameters

percentage

Double It is the new value sent to the KNX bus in range -327,68 ÷ 327,67. Resolution is 0,01 %.

highpriority

Boolean Optional, defaults to False. If it is False, then the command is applied with standard priority on the KNX bus. If it is True, then the command is applied with a high priority on the KNX bus.

#### Return value

Boolean This function returns True on success or False if an error occurs. A function GetLastError returns the error number.

# GetValue

This function returns the last value of the group object with the given address received from the KNX bus in range -32768 ÷ 32767.

#### Syntax

```visualbasic
Function GetValue() As Long
```

#### Return value

Long It is the last received value of the group object. Value is in the range of -32768 ÷ 32767.

# GetTime

This function returns the last value of the group object with the given address received from the KNX bus in Time format. This function is suitable for DPT Dimension 8.002 to 8.007, where the time scale is defined. In other DPT Dimensions it returns (0:0.0).

#### Syntax

```visualbasic
Function GetTime() As Time
```

#### Return value

Time It is the last received value of the group object. Range depends on selected DPT Dimension.

# GetPercentage

This function returns the last value of the group object with the given address received from the KNX bus in the range -327,68 ÷ 327,67 (%). This function is suitable for DPT Dimension 8.010.

#### Syntax

```visualbasic
Function GetPercentage() As Double
```

#### Return value

Double It is the last received value of the group object. Value is in range -327,68 ÷ 327,67.

# OnUpdate

This event is raised when the KNX telegram with the appropriate group address is received. It returns all possible formats of data received from the KNX telegram.

#### Syntax

```visualbasic
Event OnUpdate As Process (
  newvalue As Long,
  newtime As Time,
  percentage As Double)
```

#### Parameters

newvalue

Long It is the new value received from the KNX bus in range -32768 ÷ 32767.

newtime

Time It is the new value received from the KNX bus in time format. Range depends on selected DPT Dimension. This function is suitable for DPT Dimension 8.002 to 8.007, where the time scale is defined. In other DPT Dimensions, it is set to (0:0.0).

percentage

Double It is the new value received from the KNX bus in the range -327,68 ÷ 327,67. This value is suitable for DPT Dimension 8.010.