# DNP3 Driver connection lost - unexpected end of file

**URL:** <https://forum.inductiveautomation.com/t/dnp3-driver-connection-lost-unexpected-end-of-file/109455>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [August 7, 2025, 3:07am UTC](https://forum.inductiveautomation.com/t/dnp3-driver-connection-lost-unexpected-end-of-file/109455 "2025-08-07T03:07:34Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![andrew.budaiev](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/andrew.budaiev/32/72921_2.png) [@andrew.budaiev](https://forum.inductiveautomation.com/u/andrew.budaiev)\
**Post date:** [August 7, 2025, 3:07am UTC](https://forum.inductiveautomation.com/t/dnp3-driver-connection-lost-unexpected-end-of-file/109455/1 "2025-08-07T03:07:34Z")

</div>

I'm experiencing an issue with a DNP3 device that keeps dropping its connection. The device status is cycling from "Connected" to "WaitAfterDisconnect" approximately every second. Something is closing the connection? Any advice?

Logs:

> **Summary**
>
> ```java
> Dnp3StackLogger	07Aug2025 09:32:10	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}: waiting 1000 ms to reconnect
> Dnp3StackLogger	07Aug2025 09:32:10	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}: connection lost - unexpected end of file
> Dnp3StackLogger	07Aug2025 09:32:10	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=LinkStatus dest=11}: PHYS RX - 10 bytes 05 64 05 0B 15 00 0B 00 2F 3D
> Dnp3StackLogger	07Aug2025 09:32:10	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=LinkStatus dest=11}: PHYS TX - 10 bytes 05 64 05 C9 0B 00 15 00 F4 F0
> Dnp3StackLogger	07Aug2025 09:32:10	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=LinkStatus dest=11}: sending link status request (for 11)
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: APP RX - ctrl: [fir: true fin: true con: false uns: false seq: 3] func: Response iin1: [] iin2: [] ... (len = 0)
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: PHYS RX - 17 bytes 05 64 0A 44 15 00 0B 00 2C F5 DC C3 81 00 00 1E 91
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: PHYS TX - 24 bytes 05 64 11 C4 0B 00 15 00 0C 3F C3 C3 01 3C 02 06 3C 03 06 3C 04 06 5C 73
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: APP TX - ctrl: [fir: true fin: true con: false uns: false seq: 3] func: Read ... (len = 9) g60v2 : Class Data - Class 1 - all objects g60v3 : Class Data - Class 2 - all objects g60v4 : Class Data - Class 3 - all objects
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(EnableUnsolicited) dest=11}: APP RX - ctrl: [fir: true fin: true con: false uns: false seq: 2] func: Response iin1: [] iin2: [] ... (len = 0)
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(EnableUnsolicited) dest=11}: PHYS RX - 17 bytes 05 64 0A 44 15 00 0B 00 2C F5 DB C2 81 00 00 E4 BA
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(EnableUnsolicited) dest=11}: PHYS TX - 24 bytes 05 64 11 C4 0B 00 15 00 0C 3F C2 C2 14 3C 02 06 3C 03 06 3C 04 06 D3 2F
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(EnableUnsolicited) dest=11}: APP TX - ctrl: [fir: true fin: true con: false uns: false seq: 2] func: EnableUnsolicited ... (len = 9) g60v2 : Class Data - Class 1 - all objects g60v3 : Class Data - Class 2 - all objects g60v4 : Class Data - Class 3 - all objects
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: APP RX - ctrl: [fir: true fin: true con: false uns: false seq: 1] func: Response iin1: [] iin2: [] ... (len = 85) g1v2 : Binary Input - With Flags - 1-byte start/stop - [0, 19] index: 0 flags: 0x00 [] index: 1 flags: 0x00 [] index: 2 flags: 0x00 [] index: 3 flags: 0x01 [ONLINE] index: 4 flags: 0x00 [] index: 5 flags: 0x00 [] index: 6 flags: 0x00 [] index: 7 flags: 0x00 [] index: 8 flags: 0x00 [] index: 9 flags: 0x01 [ONLINE] index: 10 flags: 0x01 [ONLINE] index: 11 flags: 0x81 [ONLINE, STATE] index: 12 flags: 0x01 [ONLINE] index: 13 flags: 0x01 [ONLINE] index: 14 flags: 0x01 [ONLINE] index: 15 flags: 0x01 [ONLINE] index: 16 flags: 0x01 [ONLINE] index: 17 flags: 0x00 [] index: 18 flags: 0x00 [] index: 19 flags: 0x00 [] g30v4 : Analog Input - 16-bit Without Flag - 1-byte start/stop - [0, 9] index: 0 value: 0 index: 1 value: 0 index: 2 value: 2 index: 3 value: 388 index: 4 value: 387 index: 5 value: 386 index: 6 value: 4995 index: 7 value: 0 index: 8 value: 0 index: 9 value: -6 g30v2 : Analog Input - 16-bit With Flag - 1-byte start/stop - [10, 19] index: 10 flags: 0x00 [] value: 0 index: 11 flags: 0x00 [] value: 0 index: 12 flags: 0x00 [] value: 0 index: 13 flags: 0x00 [] value: 0 index: 14 flags: 0x00 [] value: 0 index: 15 flags: 0x00 [] value: 0 index: 16 flags: 0x00 [] value: 0 index: 17 flags: 0x00 [] value: 0 index: 18 flags: 0x00 [] value: 0 index: 19 flags: 0x00 [] value: 0
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: PHYS RX - 112 bytes 05 64 5F 44 15 00 0B 00 19 DB DA C1 81 00 00 01 02 00 00 13 00 00 00 01 00 00 46 31 00 00 00 01 01 81 01 01 01 01 01 00 00 00 1E 04 C3 9F 00 00 09 00 00 00 00 02 00 84 01 83 01 82 01 83 05 05 13 00 00 00 00 FA FF 1E 02 00 0A 13 00 00 00 00 4F BD 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF 00 00 00 00 00 00 00 00 00 00 FF FF
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: PHYS TX - 27 bytes 05 64 14 C4 0B 00 15 00 85 C7 C1 C1 01 3C 02 06 3C 03 06 3C 04 06 3C 01 06 62 01
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(Read) dest=11}: APP TX - ctrl: [fir: true fin: true con: false uns: false seq: 1] func: Read ... (len = 12) g60v2 : Class Data - Class 1 - all objects g60v3 : Class Data - Class 2 - all objects g60v4 : Class Data - Class 3 - all objects g60v1 : Class Data - Class 0 - all objects
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(DisableUnsolicited) dest=11}: APP RX - ctrl: [fir: true fin: true con: false uns: false seq: 0] func: Response iin1: [] iin2: [] ... (len = 0)
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(DisableUnsolicited) dest=11}: PHYS RX - 17 bytes 05 64 0A 44 15 00 0B 00 2C F5 D9 C0 81 00 00 41 34
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(DisableUnsolicited) dest=11}: PHYS TX - 24 bytes 05 64 11 C4 0B 00 15 00 0C 3F C0 C0 15 3C 02 06 3C 03 06 3C 04 06 1A 55
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}:task{type=Function(DisableUnsolicited) dest=11}: APP TX - ctrl: [fir: true fin: true con: false uns: false seq: 0] func: DisableUnsolicited ... (len = 9) g60v2 : Class Data - Class 1 - all objects g60v3 : Class Data - Class 2 - all objects g60v4 : Class Data - Class 3 - all objects
> Dnp3StackLogger	07Aug2025 09:32:09	dnp3-master-tcp-client{endpoint="10.10.5.21:20002"}: connected to 10.10.5.21:20002
> 
> ```

I managed to get Wireshark capture from the SEL.

[pcap.pcap](https://forum.inductiveautomation.com/uploads/short-url/vSLPuP2RhQtCQFqC6NegALv8D7b.pcap) (996.9 KB)  
Sorry, I created and accidentally deleted the same topic.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [August 7, 2025, 3:14am UTC](https://forum.inductiveautomation.com/t/dnp3-driver-connection-lost-unexpected-end-of-file/109455/2 "2025-08-07T03:14:28Z")

</div>

It seems from this capture that you have more than one simultaneous connection to this outstation using the same source/dest address pair, src=21, dst=11, from IPs 10.10.5.254 and 10.10.5.232.

---

<div class="post-metadata">

**Author:** ![andrew.budaiev](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/andrew.budaiev/32/72921_2.png) [@andrew.budaiev](https://forum.inductiveautomation.com/u/andrew.budaiev)\
**Post date:** [August 7, 2025, 4:53am UTC](https://forum.inductiveautomation.com/t/dnp3-driver-connection-lost-unexpected-end-of-file/109455/3 "2025-08-07T04:53:36Z")

</div>

Thanks Kevin, I also noticed that we get no DNP in the capture. Changing the Port to 20000 on the SEL (and on the Ignition side) fixes it. It was working with 20002 before, but it seems some network changes were made and it started dropping packets.🤷‍♂️

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [August 7, 2025, 11:55am UTC](https://forum.inductiveautomation.com/t/dnp3-driver-connection-lost-unexpected-end-of-file/109455/4 "2025-08-07T11:55:45Z")

</div>

> [@andrew.budaiev](#):
>
> Changing the Port to 20000 on the SEL (and on the Ignition side) fixes it.

Probably because the other thing trying to communicate with it no longer can.
