---
title: "WELLPRO WP8026ADAM"
description: "16-channel optocoupler-isolated digital input module read via Modbus TCP over an RS485-to-TCP gateway. TapHome integration template for WELLPRO WP8026ADAM."
url: "https://taphome.com/en/compatibility/wellpro-wp8026adam/"
language: en
lastmod: 2026-04-23
generator: hugo
ai:
  topics: ["modbus-tcp","modbus-rtu","rs485","i/o-module","din-rail","optocoupler","discrete-inputs"]
  questions: ["How to integrate WellPro WP8026ADAM with TapHome?","What does the WP8026ADAM TapHome template read?","How to connect WP8026ADAM via Modbus TCP to TapHome?","What RS485-to-TCP gateway is needed for WP8026ADAM?","How to set the Modbus slave address on WP8026ADAM?","Why do all digital inputs read the same state on WP8026ADAM?"]
---

# WELLPRO WP8026ADAM

Communication: Modbus TCP

- [Shanghai WellPro Electrical Technology](http://www.shwellpro.com)

> Network address
> 
> TapHome reaches this device at the address entered on import. Give the device a fixed address — an IP reservation in the router, or its mDNS name if it supports one — otherwise the integration stops working when the router changes the address.
> 
> [Network Preparation](https://taphome.com/en/docs/setup/network-preparation/)

## Integration guide

The WELLPRO WP8026ADAM is a 16-channel digital input module with optocoupler-isolated dry-contact inputs. It is natively an RS485 Modbus RTU device (9600 baud, N/8/1) and is integrated with TapHome over **Modbus TCP via an RS485-to-TCP gateway** — TapHome Core does not require an on-board RS485 port.

The template exposes all 16 inputs (DI 1 – DI 16) as read-only binary sensors. Each input is read from a discrete-input register (1X) using Modbus function code 02, with a 2500 ms poll interval.

## Hardware connection

The module ships in a compact DIN-rail enclosure (125 × 73 × 35 mm) and is powered from an external 9–30 VDC supply (2 W typical). It provides 1500 VDC isolation between the optocoupler inputs and the logic side, and the RS485 bus is designed with lightning and interference protection for industrial field wiring.

### Terminals

The terminal strip is arranged in two rows:

| Row | Terminals |
|------|-----------|
| Top | `AVcc`, `AGnd`, `DI_01` – `DI_08` |
| Bottom | `DI_09` – `DI_16`, `485A`, `485B` |

- **AVcc / AGnd** — external DC power (9–30 V). Verify polarity before powering up.
- **DI_01 – DI_16** — 16 digital input channels.
- **485A / 485B** — RS485 signal A+ / B−.

### Digital input wiring

![WELLPRO WP8026ADAM digital input application diagram — optocoupler-isolated dry-contact wiring with external power](https://taphome.com/images/compatibility/wellpro-wp8026adam/wiring-digital-input_hu_748b7a8d674ea340.jpg)

Each input is driven by an internal optocoupler. A typical wiring is:

1. Connect the external DC power supply (V+/V−) to `AVcc` / `AGnd`.
2. Connect one side of the external contact (push button, switch or NPN sensor) to the external V+ rail.
3. Connect the other side of the contact to the desired `DI_xx` terminal.

When the contact closes, current flows through the optocoupler and the input reads as logical 1 in the register. Inputs are **active-low** at the optocoupler side.

> [!NOTE]
> Up to 254 WELLPRO modules can share a single RS485 bus (address range 0x01 – 0xFE). If several modules are daisy-chained on one gateway, each must have a unique slave address (see *Configuration → Module address* below).

### RS485-to-TCP gateway

![RS485 network topology — PC, 485 converter and multiple WELLPRO modules on a shared bus](https://taphome.com/images/compatibility/wellpro-wp8026adam/rs485-network_hu_2c8b00b7a89b243e.jpg)

Because the WP8026ADAM speaks native Modbus RTU, a gateway is required between TapHome Core and the module:

1. Wire `485A` / `485B` of the module to the A/B terminals of an RS485-to-TCP gateway (e.g. USR-TCP232, Waveshare RS485 to ETH, or any equivalent Modbus TCP ↔ RTU converter).
2. Connect the gateway to the same LAN as TapHome Core via Ethernet.
3. Configure the gateway to operate in **Modbus TCP server → Modbus RTU master** mode (sometimes labelled "Modbus TCP to RTU bridge" or "transparent transmission with Modbus protocol").
4. Set the serial side of the gateway to **9600 baud, 8 data bits, no parity, 1 stop bit** — these are the WP8026ADAM factory defaults.

## Configuration

When importing the template in TapHome, provide:

- **IP Address** — IP of the RS485-to-TCP gateway (default: `192.168.0.1`)
- **Slave ID** — Modbus address of the WP8026ADAM on the RS485 bus (default: `1`, range `0x01 – 0xFE`)

### Enabling Modbus communication

The WP8026ADAM has **no menu, DIP switches or web interface**. It is always in Modbus RTU slave mode on its serial side — no "enable Modbus" step is needed on the device itself. All commissioning happens on two levels:

- **On the gateway** — configure Modbus TCP ↔ RTU bridging and serial parameters (see *RS485-to-TCP gateway* above).
- **On the module** — optionally change the Modbus slave address or serial parameters by writing to two holding registers (see below). The factory defaults are usually sufficient.

### Module address

Each module's Modbus slave address is stored in holding register `0x0064` (FC 06 write, FC 03 read). The default address is `0x01` and the setting persists across power cycles.

| Parameter | Value |
|------|-------|
| Register | `H:0x0064` (4X 40101) |
| Data type | UInt16 |
| Default | `0x01` |
| Range | `0x01 – 0xFE` |

To change the address, send a broadcast write (master address `0x00`) with function code `0x06`:

```
00 06 00 64 00 01 08 04      # set address to 0x01 (example)
```

> [!WARNING]
> Only **one module** may be connected to the RS485 bus while performing a broadcast address change. If multiple modules are on the bus, all of them will accept the broadcast and end up sharing the same address.

### Serial parameters (baud / parity)

Serial parameters are stored in holding register `0x0065`. The factory default is `0x0002` (9600, N, 8, 1).

| Value | Baud | Parity | Data | Stop |
|------|------|--------|------|------|
| `0x0001` | 4800 | None | 8 | 1 |
| `0x0002` | 9600 | None | 8 | 1 *(default)* |
| `0x0003` | 19200 | None | 8 | 1 |
| `0x0004` | 38400 | None | 8 | 1 |
| `0x0005` | 4800 | Even | 8 | 1 |
| `0x0006` | 9600 | Even | 8 | 1 |
| `0x0007` | 19200 | Even | 8 | 1 |
| `0x0008` | 38400 | Even | 8 | 1 |

The module must be **power-cycled** after a serial parameter change for the new settings to take effect. Lower baud rates offer higher noise immunity on long cable runs.

> [!NOTE]
> Module address and serial parameter registers are **not** exposed by the TapHome template. Configure them once during commissioning using the PC debug tool shipped with the module, a generic Modbus poll utility, or a temporary direct RS485 connection.

## Device capabilities

The template exposes 16 read-only digital input sensors.

### Digital inputs (DI 1 – DI 16)

Sixteen individually addressed binary sensors, each mapped to one discrete-input register (1X):

| Device | Terminal | Register | Function code |
|--------|----------|----------|---------------|
| DI 1 | `DI_01` | 1X 10001 (`D:0`) | 02 |
| DI 2 | `DI_02` | 1X 10002 (`D:1`) | 02 |
| DI 3 | `DI_03` | 1X 10003 (`D:2`) | 02 |
| DI 4 | `DI_04` | 1X 10004 (`D:3`) | 02 |
| DI 5 | `DI_05` | 1X 10005 (`D:4`) | 02 |
| DI 6 | `DI_06` | 1X 10006 (`D:5`) | 02 |
| DI 7 | `DI_07` | 1X 10007 (`D:6`) | 02 |
| DI 8 | `DI_08` | 1X 10008 (`D:7`) | 02 |
| DI 9 | `DI_09` | 1X 10009 (`D:8`) | 02 |
| DI 10 | `DI_10` | 1X 10010 (`D:9`) | 02 |
| DI 11 | `DI_11` | 1X 10011 (`D:10`) | 02 |
| DI 12 | `DI_12` | 1X 10012 (`D:11`) | 02 |
| DI 13 | `DI_13` | 1X 10013 (`D:12`) | 02 |
| DI 14 | `DI_14` | 1X 10014 (`D:13`) | 02 |
| DI 15 | `DI_15` | 1X 10015 (`D:14`) | 02 |
| DI 16 | `DI_16` | 1X 10016 (`D:15`) | 02 |

Each device appears in TapHome as an individual binary (reed-contact) sensor. Poll interval is 2500 ms per channel. Because WP8026ADAM has no outputs, all devices are read-only.

> [!TIP]
> Use the front-panel per-channel LEDs (labelled 01 – 16) as a quick visual cross-check during commissioning. A lit LED means the corresponding optocoupler is conducting — this state is what TapHome sees as *closed* on that channel.

## Troubleshooting

### No Modbus communication at all

1. Verify the RS485-to-TCP gateway is reachable from TapHome Core (ping the gateway's IP).
2. Open the gateway web interface and confirm it is in **Modbus TCP server** / **Modbus TCP to RTU bridge** mode, not in transparent TCP passthrough.
3. Confirm serial-side parameters on the gateway match the module: **9600 baud, 8 data bits, no parity, 1 stop bit** (factory defaults).
4. Check the POWER/DATA LED on the WP8026ADAM — it must be green. No light means no 9–30 V supply on `AVcc` / `AGnd` (or reversed polarity).
5. Confirm the slave ID configured in TapHome matches the module's address register `0x0064`. The factory default is `1`.
6. Verify RS485 wiring: `485A` ↔ gateway A (+), `485B` ↔ gateway B (−). Swapped A/B is the most common RS485 issue.

### POWER/DATA LED turns red during polling

A red LED indicates the module received a **malformed or out-of-range command** (for example a CRC mismatch, or a request addressed to a different slave). Cross-check the gateway mode — some bridges forward raw TCP bytes instead of repacking them as proper Modbus RTU, which produces CRC errors.

### All 16 inputs read the same state

- If all inputs read **0**, the external V+ rail is likely not wired through the contacts, so no current reaches the optocouplers.
- If all inputs read **1** continuously, the contacts may be shorted directly between V+ and DI without a return path through the power supply. Verify the wiring shown in the *Digital input wiring* diagram — the optocoupler needs a complete loop through the external DC supply.

### Module stops responding after serial parameter change

A write to register `0x0065` takes effect only after a power cycle. Until the module is restarted, it still uses the previous serial settings. After restart, update the gateway's serial parameters to match the new baud/parity before reconnecting.

### Two modules answer on the same address

If two modules were commissioned at once via broadcast, both now share the same slave address. Disconnect all but one from the RS485 bus, then re-run the broadcast address change on each module individually.

## Available devices 16

These devices appear in TapHome after import.

WELLPRO WP8026ADAM Module

DI 1 — Digital Input 1 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:0 Bool

Read

```taphome
MODBUSR(D, 0, Bool)
```

DI 2 — Digital Input 2 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:1 Bool

Read

```taphome
MODBUSR(D, 1, Bool)
```

DI 3 — Digital Input 3 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:2 Bool

Read

```taphome
MODBUSR(D, 2, Bool)
```

DI 4 — Digital Input 4 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:3 Bool

Read

```taphome
MODBUSR(D, 3, Bool)
```

DI 5 — Digital Input 5 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:4 Bool

Read

```taphome
MODBUSR(D, 4, Bool)
```

DI 6 — Digital Input 6 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:5 Bool

Read

```taphome
MODBUSR(D, 5, Bool)
```

DI 7 — Digital Input 7 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:6 Bool

Read

```taphome
MODBUSR(D, 6, Bool)
```

DI 8 — Digital Input 8 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:7 Bool

Read

```taphome
MODBUSR(D, 7, Bool)
```

DI 9 — Digital Input 9 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:8 Bool

Read

```taphome
MODBUSR(D, 8, Bool)
```

DI 10 — Digital Input 10 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:9 Bool

Read

```taphome
MODBUSR(D, 9, Bool)
```

DI 11 — Digital Input 11 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:10 Bool

Read

```taphome
MODBUSR(D, 10, Bool)
```

DI 12 — Digital Input 12 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:11 Bool

Read

```taphome
MODBUSR(D, 11, Bool)
```

DI 13 — Digital Input 13 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:12 Bool

Read

```taphome
MODBUSR(D, 12, Bool)
```

DI 14 — Digital Input 14 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:13 Bool

Read

```taphome
MODBUSR(D, 13, Bool)
```

DI 15 — Digital Input 15 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:14 Bool

Read

```taphome
MODBUSR(D, 14, Bool)
```

DI 16 — Digital Input 16 Reed Contact Read-only

Optocoupler-isolated dry-contact input, active-low

Register: D:15 Bool

Read

```taphome
MODBUSR(D, 15, Bool)
```

**Connection:** Modbus TCP • Slave ID: $\[SlaveId]

Possible improvements (3)

- H:0x0064 (4X 40101) Module Address — UInt16, R/W via FC 06, persistent across power cycles; default 0x01, range 0x01–0xFE. Set via broadcast (master addr 00) with only one module connected
- H:0x0065 (4X 40102) Communication Parameters (baud / parity) — UInt16, R/W via FC 06, persistent; default 0x0002 (9600/N/8/1). Values 0x0001–0x0008 select baud (4800/9600/19200/38400) × parity (None/Even). Module restart required to apply
- n/a Module status LED — Front panel LED: green = powered / valid command, red = invalid command, twinkling = communicating. Per-channel status LEDs 01–16 indicate input state; not readable over Modbus, visual only

## Import parameters

Enter these values when you import the XML.

| Asked in the app | Default       |
|------------------|---------------|
| Slave ID         | `1`           |
| IP address       | `192.168.0.1` |

## Sources

- WP8026ADAM User's Manual V1.42
  
  [michiel.vanderwulp.be](https://michiel.vanderwulp.be/domotica/Modules/WellPro_WP8026ADAM/WP8026ADAM-User-s-Manual.pdf) 2026-04-23
  
  [PDF](https://taphome.com/compatibility/devices/wellpro-wp8026adam/manufacturer/wp8026adam-user-manual.pdf)
- WELLPRO Module Modbus RTU Register Address V1.42A
  
  [michiel.vanderwulp.be](https://michiel.vanderwulp.be/domotica/Modules/WellPro_WP8026ADAM/WELLPRO-MODULE-MODBUS-RTU-REGISTER-ADDRESS.pdf) 2026-04-23
  
  [PDF](https://taphome.com/compatibility/devices/wellpro-wp8026adam/manufacturer/modbus-register-address.pdf)

Manufacturer documents are © their respective owners. They are provided as published by the manufacturer, for reference only.

## Related Documentation

- [Modbus Integration](https://taphome.com/en/compatibility/modbus-guide/)
- [Modbus](https://taphome.com/en/docs/integration/modbus/)
- [Simple configuration using templates](https://taphome.com/en/docs/integration/modbus/templates/)
- [Modbus scripts and prefetch](https://taphome.com/en/docs/script/modbus-scripts/)
- [Modbus functions](https://taphome.com/en/docs/script/modbus/)
- [Modbus data types](https://taphome.com/en/docs/script/modbus-data-types/)

