8.2.1.2.13 Binary Output, SBO, Same Sequence Number Operate Retries (revision 3.1r1, subset level 3)

Device under test: Step Function I/O dnp3 outstation

10:56:15.517 Running procedure: 8.2.1.2.13
10:56:15.519 This procedure is enabled because the following options:
10:56:15.519 - supports.binaryOutput.commands == true
10:56:15.519 step: 2
10:56:15.519 - Tell a manual tester: Watch binary output 0 during this procedure: it should operate once after the OPERATE in step 4, and not again after the repeated one in step 7. You'll be asked what you saw after the steps, so make sure you can tell one operation from two (e.g. a counter, or an on-time long enough to see). Get ready, then press ENTER.
10:56:15.519 - Select(0x03) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00
10:56:15.519 - g12v1, 1-Byte Count and Index, count: 1
10:56:15.519 - [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.520 --A-> Select(0x03) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00
10:56:15.520 g12v1, 1-Byte Count and Index, count: 1
10:56:15.520 [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.520 --T-> fir: 1 fin: 1 seq: 0
10:56:15.520 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
10:56:15.520 --P-> 05 64 18 C4 00 04 01 00 5B 61
10:56:15.520 C0 C0 03 0C 01 17 01 00 03 01 64 00 00 00 C8 00 FD 11
10:56:15.520 00 00 00 FF FF
10:56:15.520 step: 3
10:56:15.520 - Read a single fragment response w/ sequence(0x00)
10:56:15.520 - Verify the response contains the exact object header:
10:56:15.520 - g12v1, 1-Byte Count and Index, count: 1
10:56:15.520 - [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.520 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
10:56:15.521 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
10:56:15.521 C0 C0 81 90 00 0C 01 17 01 00 03 01 64 00 00 00 9C 9A
10:56:15.521 C8 00 00 00 00 78 FB
10:56:15.521 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
10:56:15.521 <-T-- fir: 1 fin: 1 seq: 0
10:56:15.521 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00 IIN(DeviceRestart, NeedTime)
10:56:15.521 g12v1, 1-Byte Count and Index, count: 1
10:56:15.521 [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.521 step: 4
10:56:15.521 - Operate(0x04) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
10:56:15.521 - g12v1, 1-Byte Count and Index, count: 1
10:56:15.521 - [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.521 --A-> Operate(0x04) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
10:56:15.521 g12v1, 1-Byte Count and Index, count: 1
10:56:15.521 [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.521 --T-> fir: 1 fin: 1 seq: 0
10:56:15.521 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
10:56:15.521 --P-> 05 64 18 C4 00 04 01 00 5B 61
10:56:15.521 C0 C1 04 0C 01 17 01 00 03 01 64 00 00 00 C8 00 35 C7
10:56:15.521 00 00 00 FF FF
10:56:15.521 step: 5
10:56:15.521 - Read a single fragment response w/ sequence(0x01)
10:56:15.521 - Verify the response contains the exact object header:
10:56:15.521 - g12v1, 1-Byte Count and Index, count: 1
10:56:15.521 - [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.521 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
10:56:15.522 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
10:56:15.522 C1 C1 81 90 00 0C 01 17 01 00 03 01 64 00 00 00 08 B9
10:56:15.522 C8 00 00 00 00 78 FB
10:56:15.522 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
10:56:15.522 <-T-- fir: 1 fin: 1 seq: 1
10:56:15.522 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime)
10:56:15.522 g12v1, 1-Byte Count and Index, count: 1
10:56:15.522 [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.522 step: 6
10:56:15.522 - Check that binary control point 0 operate
10:56:15.522 [PLG] Binary output 0 did operate
10:56:15.522 step: 7
10:56:15.522 - Operate(0x04) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
10:56:15.522 - g12v1, 1-Byte Count and Index, count: 1
10:56:15.522 - [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.522 --A-> Operate(0x04) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
10:56:15.522 g12v1, 1-Byte Count and Index, count: 1
10:56:15.522 [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.522 --T-> fir: 1 fin: 1 seq: 0
10:56:15.522 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
10:56:15.522 --P-> 05 64 18 C4 00 04 01 00 5B 61
10:56:15.522 C0 C1 04 0C 01 17 01 00 03 01 64 00 00 00 C8 00 35 C7
10:56:15.522 00 00 00 FF FF
10:56:15.523 step: 8
10:56:15.523 - Read a single fragment response w/ sequence(0x01)
10:56:15.523 - Verify the response contains the exact object header:
10:56:15.523 - g12v1, 1-Byte Count and Index, count: 1
10:56:15.523 - [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.523 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
10:56:15.523 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
10:56:15.523 C2 C1 81 90 00 0C 01 17 01 00 03 01 64 00 00 00 9C 6F
10:56:15.523 C8 00 00 00 00 78 FB
10:56:15.523 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
10:56:15.523 <-T-- fir: 1 fin: 1 seq: 2
10:56:15.523 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime)
10:56:15.523 g12v1, 1-Byte Count and Index, count: 1
10:56:15.523 [0] - code: 0x03 (LATCH_ON, NUL) count: 1 onTime: 100 offTime: 200 status: 0 (SUCCESS)
10:56:15.523 step: 9
10:56:15.523 - Check that no binary control point operated
10:56:16.524 [PLG] Binary output did NOT operate
10:56:16.524 Passed procedure: 8.2.1.2.13