Created
May 9, 2019 19:58
-
-
Save splatch/d511cd4a3d73137763f498db75ecaf1f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
BACnetPDU ::= CHOICE { | |
confirmed-request-pdu | |
unconfirmed-request-pdu | |
simple-ack-pdu | |
complex-ack-pdu | |
segment-ack-pdu | |
error-pdu | |
reject-pdu | |
abort-pdu | |
} | |
BACnet-Confirmed-Request-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 0 for this PDU type | |
segmented-message [1] BOOLEAN, | |
more-follows [2] BOOLEAN, | |
segmented-response-accepted [3] BOOLEAN, | |
reserved [4] Unsigned (0..3), -- shall be set to zero | |
max-segments-accepted [5] Unsigned (0..7), -- as per Clause 20.1.2.4 | |
max-apdu-length-accepted [6] Unsigned (0..15), -- as per Clause 20.1.2.5 | |
invoke-id [7] Unsigned (0..255), | |
sequence-number [8] Unsigned (0..255) OPTIONAL, -- only if segmented message | |
proposed-window-size [9] Unsigned (1..127) OPTIONAL, -- only if segmented message | |
service-choice [10] BACnetConfirmedServiceChoice, | |
service-request [11] BACnet-Confirmed-Service-Request OPTIONAL | |
-- Context-specific tags 0..11 are NOT used in header encoding | |
} | |
BACnet-Unconfirmed-Request-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 1 for this PDU type | |
reserved [1] Unsigned (0..15), -- shall be set to zero | |
service-choice [2] BACnetUnconfirmedServiceChoice, | |
service-request [3] BACnet-Unconfirmed-Service-Request | |
-- Context-specific tags 0..3 are NOT used in header encoding | |
} | |
BACnet-SimpleACK-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 2 for this PDU type | |
reserved [1] Unsigned (0..15), -- shall be set to zero | |
invoke-id [2] Unsigned (0..255), | |
service-ack-choice [3] BACnetConfirmedServiceChoice | |
-- Context-specific tags 0..3 are NOT used in header encoding | |
} | |
BACnet-ComplexACK-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 3 for this PDU type | |
segmented-message [1] BOOLEAN, | |
more-follows [2] BOOLEAN, | |
reserved [3] Unsigned (0..3), -- shall be set to zero | |
invoke-id [4] Unsigned (0..255), | |
sequence-number [5] Unsigned (0..255) OPTIONAL, -- only if segmented message | |
proposed-window-size [6] Unsigned (1..127) OPTIONAL, -- only if segmented message | |
service-ack-choice [7] BACnetConfirmedServiceChoice, | |
service-ack [8] BACnet-Confirmed-Service-ACK | |
-- Context-specific tags 0..8 are NOT used in header encoding | |
} | |
BACnet-SegmentACK-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 4 for this PDU type | |
reserved [1] Unsigned (0..3), -- shall be set to zero | |
negative-ack [2] BOOLEAN, | |
server [3] BOOLEAN, | |
original-invoke-id [4] Unsigned (0..255), | |
sequence-number [5] Unsigned (0..255), | |
actual-window-size [6] Unsigned (1..127) | |
-- Context-specific tags 0..6 are NOT used in header encoding | |
} | |
BACnet-Error-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 5 for this PDU type | |
reserved [1] Unsigned (0..15), -- shall be set to zero | |
original-invoke-id [2] Unsigned (0..255), | |
error-choice [3] BACnetConfirmedServiceChoice, | |
error [4] BACnet-Error | |
-- Context-specific tags 0..4 are NOT used in header encoding | |
} | |
BACnet-Reject-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 6 for this PDU type | |
reserved [1] Unsigned (0..15), -- shall be set to zero | |
original-invoke-id [2] Unsigned (0..255), | |
reject-reason [3] BACnetRejectReason | |
-- Context-specific tags 0..3 are NOT used in the header encoding | |
} | |
BACnet-Abort-PDU ::= SEQUENCE { | |
pdu-type [0] Unsigned (0..15), -- 7 for this PDU type | |
reserved [1] Unsigned (0..7), -- shall be set to zero | |
server [2] BOOLEAN, | |
original-invoke-id [3] Unsigned (0..255), | |
abort-reason [4] BACnetAbortReason | |
-- Context-specific tags 0..4 are NOT used in header encoding | |
} | |
BACnetConfirmedServiceChoice ::= ENUMERATED { | |
-- Alarm and Event Services | |
acknowledge-alarm (0), | |
confirmed-cov-notification (1), | |
confirmed-cov-notification-multiple (31), | |
confirmed-event-notification (2), | |
get-alarm-summary (3), | |
get-enrollment-summary (4), | |
get-event-information (29), | |
life-safety-operation (27), | |
subscribe-cov (5), | |
subscribe-cov-property (28), | |
subscribe-cov-property-multiple (30), | |
-- File Access Services | |
atomic-read-file (6), | |
atomic-write-file (7), | |
-- Object Access Services | |
add-list-element (8), | |
remove-list-element (9), | |
create-object (10), | |
delete-object (11), | |
read-property (12), | |
read-property-multiple (14), | |
read-range (26), | |
write-property (15), | |
write-property-multiple (16), | |
-- Remote Device Management Services | |
device-communication-control (17), | |
confirmed-private-transfer (18), | |
confirmed-text-message (19), | |
reinitialize-device (20), | |
-- Virtual Terminal Services | |
vt-open (21), | |
vt-close (22) | |
vt-data (23) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment