# Modbus TCP device stuck in “Connecting” when connecting to Pilz MB1 (works with Modbus Poll)

**URL:** <https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [April 20, 2026, 9:12pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170 "2026-04-20T21:12:53Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![danielaurregoo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/danielaurregoo/32/84910_2.png) [@danielaurregoo](https://forum.inductiveautomation.com/u/danielaurregoo)\
**Post date:** [April 20, 2026, 9:12pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/1 "2026-04-20T21:12:54Z")

</div>

Hi everyone,

I’m trying to connect a Pilz MB1 (PNOZmulti) to Ignition using Modbus TCP, but the device remains stuck in “Connecting” and never establishes a connection.

Here’s what I’ve verified so far:

- The MB1 is correctly configured as a Modbus TCP Server (Slave)

- IP address and port (502) are correct

- Communication is working because I can successfully read data using Modbus Poll from the same machine

- I also tested connectivity using PowerShell (`Test-NetConnection`) and the port is open (TcpTestSucceeded: True)

Ignition configuration:

- Device type: Modbus TCP

- Hostname: [MB1 IP]

- Port: 502

- Default settings (timeout 2000 ms, retries 1, etc.)

- Concurrent requests: 1

Issue:

- The device status remains “Connecting” indefinitely

- No data is available in OPC Browser

Questions:

1. Does the Pilz MB1 require a specific Unit ID configuration in Ignition? (I don’t see an option for Unit ID in this driver)

2. Is there any known compatibility issue between Pilz MB1 and the standard Modbus TCP driver?

3. Should I instead use Modbus RTU over TCP or a different driver?

4. Are there any specific settings (addressing, zero-based addressing, request optimization, etc.) required for Pilz devices?

Any guidance would be greatly appreciated.

Thanks in advance!

---

<div class="post-metadata">

**Author:** ![ryan.white](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryan.white/32/73193_2.png) [@ryan.white](https://forum.inductiveautomation.com/u/ryan.white)\
**Post date:** [April 20, 2026, 9:18pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/2 "2026-04-20T21:18:42Z")

</div>

Have you made at least one tag for the device in Ignition? By default, a lot of modbus devices automatically kill sessions/connections that aren't actively requesting data. I also don't believe that the Ignition driver supports browsing, you'll need to reference your device's manual to determine what registers to request.

> **[Modbus Addressing | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/ignition-modules/opc-ua/opc-ua-drivers/modbus/modbus-addressing)**
>
> Manually Addressing a Modbus Device

---

<div class="post-metadata">

**Author:** ![David\_Stone](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/david_stone/32/79749_2.png) [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Post date:** [April 20, 2026, 9:31pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/3 "2026-04-20T21:31:10Z")

</div>

> [@ryan.white](#):
>
> I also don't believe that the Ignition driver supports browsing

Modbus TCP does not support browsing. All tags must be explicitly addressed.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 20, 2026, 9:44pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/4 "2026-04-20T21:44:23Z")

</div>

> [@danielaurregoo](#):
>
> specific Unit ID configuration in Ignition?

Ignition uses unit #0 by default. To use other units with manual addressing, include the unit # and a dot as a prefix before the `HR`, `IR`, `C`, or `DI` area indicators.

---

<div class="post-metadata">

**Author:** ![danielaurregoo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/danielaurregoo/32/84910_2.png) [@danielaurregoo](https://forum.inductiveautomation.com/u/danielaurregoo)\
**Post date:** [April 20, 2026, 9:49pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/5 "2026-04-20T21:49:09Z")

</div>

Thanks for the suggestion.

At the moment I’m not able to create any tags because the Modbus TCP device never reaches a “Connected” state, it stays indefinitely in _“Connecting”_. Because of that, I can’t browse or create tags from the OPC Browser.

However, I did some additional tests:

- Using a generic TCP device in Ignition, I _can_ establish a connection to the MB1 (so network connectivity is confirmed).

- Outside Ignition, I can successfully read data from the device using Modbus Poll.

- The port (502) is open and reachable (`Test-NetConnection` returns True).

So it seems the issue is specific to the Modbus TCP driver, not the device or network.

Also, regarding addressing:

- I need to read Discrete Inputs (Function Code 2 / 1x)

- Specifically address 8192

When I try using the TCP device workaround, I can connect, but:

- I don’t have proper Modbus addressing support

- I can’t correctly read/write using standard Modbus notation (1x, 3x, 4x, etc.)

So right now I’m blocked at two levels:

1. The Modbus TCP device never connects (so I can’t create tags)

2. The generic TCP device connects, but is not usable for Modbus addressing

Thanks again!

---

<div class="post-metadata">

**Author:** ![ryan.white](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryan.white/32/73193_2.png) [@ryan.white](https://forum.inductiveautomation.com/u/ryan.white)\
**Post date:** [April 20, 2026, 9:52pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/6 "2026-04-20T21:52:01Z")

</div>

The device connecting is not necessary for creating a tag. You can manually enter the OPC item path and OPC server. Manually defining the item path is required when creating tags for modbus devices, since the Ignition driver does not support browsing.

The register you mentioned would be something along the lines of

```python
ns=1;s=[YourDeviceConnectionNameHere]1.DI8191

```

for the OPC item path.

Also, check the logs in your gateway. I wouldn't be surprised if you see quite a few logs with something mentioning that the device connection was reset.

> **[Modbus Addressing Video at Inductive University](https://inductiveuniversity.com/videos/about-modbus-addressing/8.1)**
>
> Modbus devices don't support browsing. Learn how to manually address values in Modbus TCP devices.
> 
> User Manual Page: Modbus Addressing

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 20, 2026, 10:22pm UTC](https://forum.inductiveautomation.com/t/modbus-tcp-device-stuck-in-connecting-when-connecting-to-pilz-mb1-works-with-modbus-poll/115170/7 "2026-04-20T22:22:36Z")

</div>

> [@danielaurregoo](#):
>
> I can’t correctly read/write using standard Modbus notation (1x, 3x, 4x, etc.)

You cannot use this notation in Ignition at all. The standard prefixes (0, 1, 3, 4) are not numeric, but just a character. Ignition uses unambiguous character prefixes for the memory areas instead.

Be aware that the protocol on the wire is zero-based: the classic `400001` is accessed with function code 3, offset 0. Manually addressed in Ignition as `[someDevice]HR1` if the device is set to one-based (the default) or `[someDevice]HR0` if the device is set to zero-based.

> [@danielaurregoo](#):
>
> The Modbus TCP device never connects

This sounds like a firewall issue. Use wireshark **on the Ignition gateway** to capture all traffic to your target IP address. (Capture filter of `host 10.20.30.40` or similar.) That will definitively show what Ignition is reacting to, if anything.

Also, you do not have to wait for the device to connect to make tags in the designer. You should make them unconditionally, manually. When the device works, you'll get data. When not, you'll get bad quality.
