---
title: "ModbusNode…"
canonical: "https://docs.cuesystem.com/space/CVCDD/447610928/ModbusNode%E2%80%A6"
format: markdown
---
# Overview

There are eight nodes that represent basic entities of Modbus and nodes for 16 and 32-bit float variables:

- ModbusNodeDiscreteInput
- ModbusNodeCoil
- ModbusNodeInputRegister
- ModbusNodeHoldingRegister
- ModbusNodeFloat16InputRegister
- ModbusNodeFloat32InputRegister
- ModbusNodeFloat16HoldingRegister
- ModbusNodeFloat32HoldingRegister

Every nodes are similar.

# ModbusNode… device properties

Every nodes has same properties:

|  |  |  |  |  |
| --- | --- | --- | --- | --- |
| Property Name | Data Type | Allowed Values | Default Value | Description |
| Pool Write | Boolean | True/False | False | Enables writing value on background |
| Pool Read | Boolean | True/False | False | Enables reading value on background |
| Input/ Coil/ Register | Long | Any | 1 | Address of device input/coil/register |
| Slave address | Long | 0-255 | 255 | Address Modbus device |

# Public functions

## GetAddress

Use this function to read input/coil/register address.

#### Syntax

```visualbasic
Global Function GetAddress() As Long
```

## ReadValue

Use this function to read actual value.

If *UpdateImmediately *is true or *PoolRead *is false, function for reading from device is called, else function returns last known value from internal memory of node.

#### Syntax

```visualbasic
Global Function ReadValue(
  Optional UpdateImmediately As Boolean:=True) 
As Long
```

## CheckValue

Use this function to read actual value from device and generates event *OnValueChange*.

#### Syntax

```visualbasic
Global Function CheckValue()
```

## WriteValue

Use this function to write actual value.

If *UpdateImmediately *is true or *PoolWrite *is false, function for writing to device is called, else function stores value to internal memory of node.

#### Syntax

```visualbasic
Global Function WriteValue(
  newValue As Long, 
  Optional UpdateImmediately As Boolean := True)
```