12:02:16.946 Running procedure: 8.22.2.4
12:02:16.951 This procedure is enabled because the following options:
12:02:16.951 - supports.doubleBitChangeEvents == true
12:02:16.952 step: 1
12:02:16.952 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
12:02:16.952 - g4v0, All Objects
12:02:16.953 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
12:02:16.953 g4v0, All Objects
12:02:16.953 --T-> fir: 1 fin: 1 seq: 0
12:02:16.953 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
12:02:16.954 --P-> 05 64 0B C4 00 04 01 00 CA 8A
12:02:16.954 C0 C1 01 04 00 06 05 23
12:02:16.955 steps: 2 to 3
12:02:16.955 - Read a single fragment response w/ sequence(0x01)
12:02:16.955 - If the response is not Null, verify that the device requests an application layer confirmation.
12:02:16.956 <-P-- 05 64 0A 44 01 00 00 04 67 88
12:02:16.956 C0 C1 81 90 00 73 EE
12:02:16.956 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
12:02:16.956 <-T-- fir: 1 fin: 1 seq: 0
12:02:16.957 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime)
12:02:16.957 step: 4
12:02:16.957 - Generate several Double-bit Binary Input Change Events
12:02:16.958 Updated DBBI 41: value=DETERMINED_OFF, flags=41, timestamp=DNPTime(1586534536957)
12:02:16.958 Updated DBBI 1024: value=DETERMINED_ON, flags=81, timestamp=DNPTime(1586534536958)
12:02:16.958 Updated DBBI 0: value=DETERMINED_ON, flags=81, timestamp=DNPTime(1586534536958)
12:02:16.959 step: 5
12:02:16.959 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
12:02:16.959 - g4v0, 2-Byte Count, count: 1
12:02:16.960 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
12:02:16.960 g4v0, 2-Byte Count, count: 1
12:02:16.960 --T-> fir: 1 fin: 1 seq: 0
12:02:16.960 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 13 dest: 1024 src: 1
12:02:16.961 --P-> 05 64 0D C4 00 04 01 00 13 E1
12:02:16.961 C0 C2 01 04 00 08 01 00 4B A4
12:02:16.963 steps: 6 to 10
12:02:16.963 - Read a single fragment response w/ sequence(0x02)
12:02:16.963 - Verify the device responds with the first Double-bit Binary event
12:02:16.963 - If the variation contains timestamps, verify that they are reasonable according to the resolution specified in the Device Profile
12:02:16.963 - Verify that an application layer confirmation is requested.
12:02:16.963 - Verify that the response contains only the following variations: List(g4v1, g4v2, g4v3)
12:02:16.963 - Verify that the data is reported using 8 bit indexing (qualifier 0x17) or 16 bit indexing (qualifier 0x28).
12:02:16.963 - Verify that flag behavior complies with Section 2, Note #5.
12:02:16.964 <-P-- 05 64 12 44 01 00 00 04 7A 6A
12:02:16.964 C1 E2 81 92 00 04 01 28 01 00 29 00 41 54 A1
12:02:16.964 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 18 dest: 1 src: 1024
12:02:16.965 <-T-- fir: 1 fin: 1 seq: 1
12:02:16.966 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x02 IIN(DeviceRestart, NeedTime, Class1Events)
12:02:16.966 g4v1, 2-Byte Count and Index, count: 1
12:02:16.966 [41] - flags: 0x41
12:02:16.966 --A-> Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
12:02:16.966 --T-> fir: 1 fin: 1 seq: 0
12:02:16.967 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
12:02:16.967 --P-> 05 64 08 C4 00 04 01 00 9A 19
12:02:16.967 C0 C2 00 D6 8D
12:02:16.969 step: 11
12:02:16.969 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
12:02:16.969 - g4v0, 2-Byte Count, count: 2
12:02:16.969 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
12:02:16.969 g4v0, 2-Byte Count, count: 2
12:02:16.969 --T-> fir: 1 fin: 1 seq: 0
12:02:16.970 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 13 dest: 1024 src: 1
12:02:16.970 --P-> 05 64 0D C4 00 04 01 00 13 E1
12:02:16.970 C0 C3 01 04 00 08 02 00 82 4B
12:02:16.972 steps: 12 to 13
12:02:16.972 - Read a single fragment response w/ sequence(0x03)
12:02:16.972 - Verify the device responds with the rest of Double-bit Binary events
12:02:16.972 - If the variation contains timestamps, verify that they are reasonable according to the resolution specified in the Device Profile
12:02:16.972 - Verify that an application layer confirmation is requested.
12:02:16.972 - Verify that the response contains only the following variations: List(g4v1, g4v2, g4v3)
12:02:16.972 - Verify that the data is reported using 8 bit indexing (qualifier 0x17) or 16 bit indexing (qualifier 0x28).
12:02:16.972 - Verify that flag behavior complies with Section 2, Note #5.
12:02:16.973 <-P-- 05 64 15 44 01 00 00 04 44 B4
12:02:16.973 C2 E3 81 90 00 04 01 28 02 00 00 04 81 00 00 81 5E 6E
12:02:16.973 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 21 dest: 1 src: 1024
12:02:16.973 <-T-- fir: 1 fin: 1 seq: 2
12:02:16.974 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x03 IIN(DeviceRestart, NeedTime)
12:02:16.974 g4v1, 2-Byte Count and Index, count: 2
12:02:16.974 [1024] - flags: 0x81
12:02:16.974 [0] - flags: 0x81
12:02:16.974 --A-> Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
12:02:16.975 --T-> fir: 1 fin: 1 seq: 0
12:02:16.975 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
12:02:16.975 --P-> 05 64 08 C4 00 04 01 00 9A 19
12:02:16.975 C0 C3 00 98 26
12:02:16.976 Passed procedure: 8.22.2.4