12:02:17.502 Running procedure: 8.22.2.5
12:02:17.506 This procedure is enabled because the following options:
12:02:17.506 - supports.doubleBitChangeEvents == true
12:02:17.507 step: 1
12:02:17.507 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
12:02:17.507 - g4v0, All Objects
12:02:17.508 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
12:02:17.508 g4v0, All Objects
12:02:17.508 --T-> fir: 1 fin: 1 seq: 0
12:02:17.509 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
12:02:17.509 --P-> 05 64 0B C4 00 04 01 00 CA 8A
12:02:17.509 C0 C1 01 04 00 06 05 23
12:02:17.510 steps: 2 to 3
12:02:17.510 - Read a single fragment response w/ sequence(0x01)
12:02:17.510 - If the response is not Null, verify that the device requests an application layer confirmation.
12:02:17.511 <-P-- 05 64 0A 44 01 00 00 04 67 88
12:02:17.511 C0 C1 81 90 00 73 EE
12:02:17.511 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
12:02:17.511 <-T-- fir: 1 fin: 1 seq: 0
12:02:17.512 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime)
12:02:17.512 step: 4
12:02:17.512 - Generate several Double-bit Binary Input Change Events
12:02:17.513 Updated DBBI 0: value=DETERMINED_ON, flags=81, timestamp=DNPTime(1586534537512)
12:02:17.513 Updated DBBI 41: value=DETERMINED_OFF, flags=41, timestamp=DNPTime(1586534537513)
12:02:17.513 Updated DBBI 1024: value=DETERMINED_ON, flags=81, timestamp=DNPTime(1586534537513)
12:02:17.514 step: 5
12:02:17.514 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
12:02:17.514 - g4v0, All Objects
12:02:17.515 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
12:02:17.515 g4v0, All Objects
12:02:17.515 --T-> fir: 1 fin: 1 seq: 0
12:02:17.515 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
12:02:17.516 --P-> 05 64 0B C4 00 04 01 00 CA 8A
12:02:17.516 C0 C2 01 04 00 06 0F 46
12:02:17.518 steps: 6 to 10
12:02:17.518 - Read a single fragment response w/ sequence(0x02)
12:02:17.518 - Verify the device responds with all generated Double-bit Binary events
12:02:17.518 - If the variation contains timestamps, verify that they are reasonable according to the resolution specified in the Device Profile
12:02:17.518 - Verify that an application layer confirmation is requested.
12:02:17.518 - Verify that the response contains only the following variations: List(g4v1, g4v2, g4v3)
12:02:17.518 - Verify that the data is reported using 8 bit indexing (qualifier 0x17) or 16 bit indexing (qualifier 0x28).
12:02:17.518 - Verify that flag behavior complies with Section 2, Note #5.
12:02:17.519 <-P-- 05 64 18 44 01 00 00 04 11 D6
12:02:17.519 C1 E2 81 90 00 04 01 28 03 00 00 00 81 29 00 41 C9 8D
12:02:17.519 00 04 81 D7 58
12:02:17.519 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 24 dest: 1 src: 1024
12:02:17.520 <-T-- fir: 1 fin: 1 seq: 1
12:02:17.521 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x02 IIN(DeviceRestart, NeedTime)
12:02:17.521 g4v1, 2-Byte Count and Index, count: 3
12:02:17.521 [0] - flags: 0x81
12:02:17.521 [41] - flags: 0x41
12:02:17.521 [1024] - flags: 0x81
12:02:17.522 step: 11
12:02:17.522 - Do not issue an application layer confirm to the device.
12:02:17.522 step: 12
12:02:17.522 - Wait for 2000 milliseconds
12:02:19.522 step: 13
12:02:19.522 - Expect no response.
12:02:21.722 step: 14
12:02:21.722 - Generate several Double-bit Binary Input Change Events
12:02:21.723 Updated DBBI 0: value=DETERMINED_OFF, flags=41, timestamp=DNPTime(1586534541722)
12:02:21.723 Updated DBBI 65535: value=DETERMINED_OFF, flags=41, timestamp=DNPTime(1586534541723)
12:02:21.723 Updated DBBI 41: value=DETERMINED_ON, flags=81, timestamp=DNPTime(1586534541723)
12:02:21.724 step: 15
12:02:21.724 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
12:02:21.724 - g4v0, All Objects
12:02:21.724 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
12:02:21.724 g4v0, All Objects
12:02:21.725 --T-> fir: 1 fin: 1 seq: 0
12:02:21.725 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
12:02:21.726 --P-> 05 64 0B C4 00 04 01 00 CA 8A
12:02:21.726 C0 C3 01 04 00 06 09 65
12:02:21.728 steps: 16 to 18
12:02:21.728 - Read a single fragment response w/ sequence(0x03)
12:02:21.728 - Verify the device responds with previous data followed by the new events in time order
12:02:21.728 - If the variation contains timestamps, verify that they are reasonable according to the resolution specified in the Device Profile
12:02:21.728 - Verify that an application layer confirmation is requested.
12:02:21.728 - Verify that the response contains only the following variations: List(g4v1, g4v2, g4v3)
12:02:21.728 - Verify that the data is reported using 8 bit indexing (qualifier 0x17) or 16 bit indexing (qualifier 0x28).
12:02:21.728 - Verify that flag behavior complies with Section 2, Note #5.
12:02:21.729 <-P-- 05 64 21 44 01 00 00 04 69 70
12:02:21.729 C2 E3 81 90 00 04 01 28 06 00 00 00 81 29 00 41 1F 7B
12:02:21.729 00 04 81 00 00 41 FF FF 41 29 00 81 12 65
12:02:21.729 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 33 dest: 1 src: 1024
12:02:21.729 <-T-- fir: 1 fin: 1 seq: 2
12:02:21.732 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x03 IIN(DeviceRestart, NeedTime)
12:02:21.732 g4v1, 2-Byte Count and Index, count: 6
12:02:21.732 [0] - flags: 0x81
12:02:21.732 [41] - flags: 0x41
12:02:21.732 [1024] - flags: 0x81
12:02:21.732 [0] - flags: 0x41
12:02:21.732 [65535] - flags: 0x41
12:02:21.732 [41] - flags: 0x81
12:02:21.732 --A-> Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
12:02:21.732 --T-> fir: 1 fin: 1 seq: 0
12:02:21.732 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
12:02:21.733 --P-> 05 64 08 C4 00 04 01 00 9A 19
12:02:21.733 C0 C3 00 98 26
12:02:21.735 step: 19
12:02:21.735 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04
12:02:21.735 - g4v0, All Objects
12:02:21.736 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04
12:02:21.736 g4v0, All Objects
12:02:21.736 --T-> fir: 1 fin: 1 seq: 0
12:02:21.737 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
12:02:21.738 --P-> 05 64 0B C4 00 04 01 00 CA 8A
12:02:21.738 C0 C4 01 04 00 06 1B 8C
12:02:21.739 step: 20
12:02:21.739 - Read a single fragment response w/ sequence(0x04)
12:02:21.739 - Verify that the response is empty
12:02:21.740 <-P-- 05 64 0A 44 01 00 00 04 67 88
12:02:21.740 C3 C4 81 90 00 BA 95
12:02:21.740 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
12:02:21.740 <-T-- fir: 1 fin: 1 seq: 3
12:02:21.741 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04 IIN(DeviceRestart, NeedTime)
12:02:21.741 Passed procedure: 8.22.2.5