DNP3 - Knowledge Base
Overview of DNP3 (Distributed Network Protocol) for utility and SCADA integration — protocol levels, master/outstation architecture, and common configuration pitfalls.
What DNP3 Is
DNP3 (Distributed Network Protocol 3) is a communication protocol designed for utility and SCADA systems in the electric, water, and gas industries. It uses a master/outstation polling architecture and is engineered for reliability over noisy links and unreliable media. DNP3 data is commonly converted to BACnet or Modbus when utility equipment needs to report into a building management system.
Core Concepts
| Concept | Description |
|---|
| Master | Polling device that requests data from outstations |
| Outstation | Field device that responds to master requests and can send unsolicited events |
| Protocol Level | Conformance tier (L1–L5) defining which features are supported — must match between devices |
| Data Types | Binary Input/Output, Analog Input/Output, Counters, Events |
| Unsolicited Response | Outstation can push data to the master without being polled |
| Source / Destination Address | Network addresses identifying master and outstation — misconfiguration causes silent failures |
Transport Options
| Transport | Port / Physical Layer | Notes |
|---|
| Serial (RS-232) | COM port | Legacy installations, point-to-point |
| Serial (RS-485) | COM port | Multi-drop bus topology |
| TCP/IP (Ethernet) | Port 20000 (default) | Modern installations, routable networks |
Protocol Levels
| Level | Description |
|---|
| L1 | Basic binary and analog I/O |
| L2 | Adds counters and frozen variants |
| L3 | Adds time synchronization and file transfer |
| L4 | Adds unsolicited responses and event reporting |
| L5 | Full conformance with advanced features |
[!CAUTION] Setting the wrong protocol level is the #1 cause of DNP3 communication failure. The gateway and the target device must operate at the same level. For example, some Orion LX utility devices require Level 4 — the gateway default may not match.
Integration Prerequisites
- DNP3 protocol level — confirm the exact level required by the target device.
- Transport type — serial (RS-232/RS-485) or Ethernet/TCP.
- Master vs. outstation role — which role the gateway plays.
- Source and destination addresses — must match between devices.
- Firmware compatibility — verify the gateway firmware includes the DNP3 driver.
Common Problems
- Protocol level mismatch — wrong L1–L5 setting results in zero communication. No error message — the connection simply fails silently.
- Master/outstation role reversal — swapping roles produces cryptic errors such as “Connection closed by slave.”
- Address misconfiguration — incorrect source or destination addresses cause silent failures; the outstation ignores messages without reporting errors.
- DNP3 driver not in firmware — older gateway firmware versions may not include the DNP3 driver. Verify before shipping.
- Serial TX fails despite successful RX — receiving data works but transmitting fails, typically due to protocol level mismatch or timing configuration.
| Tool | Type | Description |
|---|
| Triangle MicroWorks DNP3 Test Harness | Simulator | Commercial DNP3 master and outstation simulator with protocol-level test capabilities. Industry gold standard. |
| OpenDNP3 | SDK / Simulator | Open-source C++ DNP3 stack — build custom master and outstation simulators. Most used open-source DNP3 implementation. |
| ASE2000 DNP3 Protocol Analyzer | Analyzer | Commercial DNP3 protocol test set — captures and decodes DNP3 traffic on serial and TCP. |
Related Pages
Related content
Overview of Johnson Controls Metasys N2 protocol for building automation — variants, point counts, device addressing, and common integration pitfalls.
Overview of MQTT (Message Queuing Telemetry Transport) for building automation — publish/subscribe model, TLS security, broker configuration, and cloud integration.
Overview of OPC-UA (Open Platform Communications Unified Architecture) for building automation — nodes, security, gateway limitations, and common integration pitfalls.
Need more help?
If this page does not resolve the issue, contact Chipkin support with the product model,
protocol details, and any diagnostics you have already captured.
Open Chipkin Support