What Is a DNP3 Sequence of Events?
When several things trip in quick succession - a breaker, then a lockout, then a pump - the order and timing matter as much as the values. DNP3's event model is built to preserve exactly that. This page explains how a DNP3 sequence of events works, why time-tagged event objects are what make it possible, and how it differs from simply polling current values.
DNP3 Sequence of Events in one line: A DNP3 sequence of events is the ordered, time-stamped record of point changes that an outstation captures and reports so a master can reconstruct exactly what happened and in what order. Each change is stored as an event object carrying the new value and a timestamp, buffered in the order it occurred, and delivered on a class poll or unsolicited response. Because the timestamp is applied at the outstation, the sequence survives even if the report reaches the master out of real-time order.
Why Time-Tagged Events Preserve Order
Reading current values on a poll tells you the state now, but not the order in which several changes happened between polls. DNP3 solves this with time-tagged event objects. When a point changes, the outstation records the new value together with a timestamp at the moment of the change, and holds it in the event buffer in the order it occurred. The order and timing are captured locally, at the source, before any network delay can scramble them.
This is why the outstation clock must be correct for the sequence to be useful. If the clock is unset, the events still record their order but their absolute times are wrong, which is exactly what the need-time flag warns about. The mechanism is DNP3's protocol-level equivalent of a dedicated sequence of events recorder, but built into the outstation and delivered over the same link as everything else.
How the Sequence Reaches the Master
The buffered events are delivered when the master reads an event class - Class 1, 2, or 3 - or when the outstation sends an unsolicited response. Because each event carries its own timestamp, the master can order them correctly even if they arrive in a batch or slightly out of real-time order across a slow link. The result at the master is a chronological list of what changed and when, drawn from many points across the outstation.
This depends on the classes being assigned so that fast-moving status points land in event classes, and on time being synchronized well enough that timestamps from different outstations line up. When those are in place, a disturbance that unfolds over a fraction of a second can be reconstructed after the fact from the DNP3 events, which is the whole reason the protocol carries timestamps at all rather than just current values from a Class 0 poll.
Frequently Asked Questions
How does DNP3 keep events in order?
The outstation timestamps each change at the moment it occurs and buffers events in that order. Because the timestamp is applied locally before transmission, the master can restore the correct sequence even if the report is delayed or arrives in a batch.
What breaks a DNP3 sequence of events?
An unset or drifting outstation clock. The relative order is still recorded, but absolute timestamps are wrong, so events from that outstation cannot be lined up against others. DNP3 raises a need-time flag when the clock has not been set.
Is a DNP3 sequence of events the same as a Class 0 poll?
No. A Class 0 poll returns current static values with no history. A sequence of events is built from time-tagged event objects in Classes 1, 2, and 3, preserving the order and timing of changes rather than just the present state.
Sources and verification
This page references the protocol specifications published by the organizations below. Editions, product capabilities, and documentation change over time - confirm current requirements and specifications directly with the source.
- Overview of DNP3 (IEEE Std 1815) - DNP Users Group
Merobix is not affiliated with, endorsed by, or sponsored by these organizations; their names are used only to identify the standards and products discussed.
Automation services
Need help turning this into a working system?
Merobix integrates SCADA, programs Allen-Bradley and Siemens PLCs, and designs and fabricates industrial control panels.
Meeting requests are reviewed before confirmation.