8.2.5.2.2 Binary Output, Single Function Support (revision 3.1r1, subset level 3)

Device under test: Step Function I/O dnp3 outstation

05:24:44.599 Running procedure: 8.2.5.2.2
05:24:44.603 This procedure is enabled because the following options:
05:24:44.603 - supports.binaryOutput.commands == true
05:24:44.603 step: 3
05:24:44.603 - The plugin knows what each control below should do, and checks that it happened
05:24:44.603 step: 4
05:24:44.603 - DUT supports the 0x01 (Pulse On/NUL) control code for single function binary output point at index 5.
05:24:44.604 step: 5
05:24:44.604 - Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
05:24:44.604 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.604 - [5] - code: 0x01 (PULSE_ON, NUL) count: 25 onTime: 1100 offTime: 1200 status: 0 (SUCCESS)
05:24:44.604 - Read a single fragment response w/ sequence(0x01)
05:24:44.604 - Verify the response contains the exact object header:
05:24:44.604 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.604 - [5] - code: 0x01 (PULSE_ON, NUL) count: 25 onTime: 1100 offTime: 1200 status: 0 (SUCCESS)
05:24:44.604 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:24:44.604 --A-> Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
05:24:44.604 g12v1, 1-Byte Count and Index, count: 1
05:24:44.604 [5] - code: 0x01 (PULSE_ON, NUL) count: 25 onTime: 1100 offTime: 1200 status: 0 (SUCCESS)
05:24:44.604 --T-> fir: 1 fin: 1 seq: 0
05:24:44.605 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
05:24:44.605 --P-> 05 64 18 C4 00 04 01 00 5B 61
05:24:44.605 C0 C1 05 0C 01 17 01 05 01 19 4C 04 00 00 B0 04 09 D3
05:24:44.605 00 00 00 FF FF
05:24:44.606 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
05:24:44.606 C0 C1 81 90 00 0C 01 17 01 05 01 19 4C 04 00 00 83 D2
05:24:44.606 B0 04 00 00 00 6F F0
05:24:44.606 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
05:24:44.606 <-T-- fir: 1 fin: 1 seq: 0
05:24:44.606 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime)
05:24:44.606 g12v1, 1-Byte Count and Index, count: 1
05:24:44.606 [5] - code: 0x01 (PULSE_ON, NUL) count: 25 onTime: 1100 offTime: 1200 status: 0 (SUCCESS)
05:24:44.606 step: 6
05:24:44.606 - Check that binary control point 5 operate
05:24:44.606 [PLG] Binary output 5 did operate
05:24:44.606 step: 7
05:24:44.606 - DUT supports the 0x03 (Latch On/NUL) control code for single function binary output point at index 6.
05:24:44.606 step: 8
05:24:44.606 - Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
05:24:44.606 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.606 - [6] - code: 0x03 (LATCH_ON, NUL) count: 30 onTime: 1300 offTime: 1400 status: 0 (SUCCESS)
05:24:44.606 - Read a single fragment response w/ sequence(0x02)
05:24:44.606 - Verify the response contains the exact object header:
05:24:44.606 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.606 - [6] - code: 0x03 (LATCH_ON, NUL) count: 30 onTime: 1300 offTime: 1400 status: 0 (SUCCESS)
05:24:44.606 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:24:44.606 --A-> Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
05:24:44.606 g12v1, 1-Byte Count and Index, count: 1
05:24:44.606 [6] - code: 0x03 (LATCH_ON, NUL) count: 30 onTime: 1300 offTime: 1400 status: 0 (SUCCESS)
05:24:44.607 --T-> fir: 1 fin: 1 seq: 0
05:24:44.607 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
05:24:44.607 --P-> 05 64 18 C4 00 04 01 00 5B 61
05:24:44.607 C0 C2 05 0C 01 17 01 06 03 1E 14 05 00 00 78 05 C0 34
05:24:44.607 00 00 00 FF FF
05:24:44.607 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
05:24:44.607 C1 C2 81 90 00 0C 01 17 01 06 03 1E 14 05 00 00 FA 4E
05:24:44.607 78 05 00 00 00 00 36
05:24:44.607 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
05:24:44.608 <-T-- fir: 1 fin: 1 seq: 1
05:24:44.608 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02 IIN(DeviceRestart, NeedTime)
05:24:44.608 g12v1, 1-Byte Count and Index, count: 1
05:24:44.608 [6] - code: 0x03 (LATCH_ON, NUL) count: 30 onTime: 1300 offTime: 1400 status: 0 (SUCCESS)
05:24:44.608 step: 9
05:24:44.608 - Check that binary control point 6 operate
05:24:44.608 [PLG] Binary output 6 did operate
05:24:44.608 step: 10
05:24:44.608 - DUT supports the 0x04 (Latch Off/NUL) control code for single function binary output point at index 7.
05:24:44.608 step: 11
05:24:44.608 - Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
05:24:44.608 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.608 - [7] - code: 0x04 (LATCH_OFF, NUL) count: 35 onTime: 1500 offTime: 1600 status: 0 (SUCCESS)
05:24:44.608 - Read a single fragment response w/ sequence(0x03)
05:24:44.608 - Verify the response contains the exact object header:
05:24:44.608 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.608 - [7] - code: 0x04 (LATCH_OFF, NUL) count: 35 onTime: 1500 offTime: 1600 status: 0 (SUCCESS)
05:24:44.608 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:24:44.608 --A-> Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
05:24:44.608 g12v1, 1-Byte Count and Index, count: 1
05:24:44.608 [7] - code: 0x04 (LATCH_OFF, NUL) count: 35 onTime: 1500 offTime: 1600 status: 0 (SUCCESS)
05:24:44.608 --T-> fir: 1 fin: 1 seq: 0
05:24:44.608 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
05:24:44.609 --P-> 05 64 18 C4 00 04 01 00 5B 61
05:24:44.609 C0 C3 05 0C 01 17 01 07 04 23 DC 05 00 00 40 06 76 DD
05:24:44.609 00 00 00 FF FF
05:24:44.609 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
05:24:44.609 C2 C3 81 90 00 0C 01 17 01 07 04 23 DC 05 00 00 2F C0
05:24:44.609 40 06 00 00 00 C7 DB
05:24:44.609 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
05:24:44.609 <-T-- fir: 1 fin: 1 seq: 2
05:24:44.609 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03 IIN(DeviceRestart, NeedTime)
05:24:44.609 g12v1, 1-Byte Count and Index, count: 1
05:24:44.609 [7] - code: 0x04 (LATCH_OFF, NUL) count: 35 onTime: 1500 offTime: 1600 status: 0 (SUCCESS)
05:24:44.609 step: 12
05:24:44.609 - Check that binary control point 7 operate
05:24:44.610 [PLG] Binary output 7 did operate
05:24:44.610 step: 13
05:24:44.610 - DUT supports the 0x41 (Pulse On/Close) control code for single function binary output point at index 8.
05:24:44.610 step: 14
05:24:44.610 - Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04
05:24:44.610 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.610 - [8] - code: 0x41 (PULSE_ON, CLOSE) count: 40 onTime: 1700 offTime: 1800 status: 0 (SUCCESS)
05:24:44.610 - Read a single fragment response w/ sequence(0x04)
05:24:44.610 - Verify the response contains the exact object header:
05:24:44.610 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.610 - [8] - code: 0x41 (PULSE_ON, CLOSE) count: 40 onTime: 1700 offTime: 1800 status: 0 (SUCCESS)
05:24:44.610 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:24:44.610 --A-> Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04
05:24:44.610 g12v1, 1-Byte Count and Index, count: 1
05:24:44.610 [8] - code: 0x41 (PULSE_ON, CLOSE) count: 40 onTime: 1700 offTime: 1800 status: 0 (SUCCESS)
05:24:44.610 --T-> fir: 1 fin: 1 seq: 0
05:24:44.610 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
05:24:44.610 --P-> 05 64 18 C4 00 04 01 00 5B 61
05:24:44.610 C0 C4 05 0C 01 17 01 08 41 28 A4 06 00 00 08 07 E6 59
05:24:44.610 00 00 00 FF FF
05:24:44.611 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
05:24:44.611 C3 C4 81 90 00 0C 01 17 01 08 41 28 A4 06 00 00 09 61
05:24:44.611 08 07 00 00 00 DC 7C
05:24:44.611 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
05:24:44.611 <-T-- fir: 1 fin: 1 seq: 3
05:24:44.611 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04 IIN(DeviceRestart, NeedTime)
05:24:44.611 g12v1, 1-Byte Count and Index, count: 1
05:24:44.611 [8] - code: 0x41 (PULSE_ON, CLOSE) count: 40 onTime: 1700 offTime: 1800 status: 0 (SUCCESS)
05:24:44.611 step: 15
05:24:44.611 - Check that binary control point 8 operate
05:24:44.611 [PLG] Binary output 8 did operate
05:24:44.611 step: 16
05:24:44.611 - DUT supports the 0x81 (Pulse On/Trip) control code for single function binary output point at index 9.
05:24:44.611 step: 17
05:24:44.611 - Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x05
05:24:44.611 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.611 - [9] - code: 0x81 (PULSE_ON, TRIP) count: 45 onTime: 1900 offTime: 2000 status: 0 (SUCCESS)
05:24:44.611 - Read a single fragment response w/ sequence(0x05)
05:24:44.611 - Verify the response contains the exact object header:
05:24:44.611 - g12v1, 1-Byte Count and Index, count: 1
05:24:44.611 - [9] - code: 0x81 (PULSE_ON, TRIP) count: 45 onTime: 1900 offTime: 2000 status: 0 (SUCCESS)
05:24:44.611 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:24:44.611 --A-> Direct Operate(0x05) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x05
05:24:44.611 g12v1, 1-Byte Count and Index, count: 1
05:24:44.611 [9] - code: 0x81 (PULSE_ON, TRIP) count: 45 onTime: 1900 offTime: 2000 status: 0 (SUCCESS)
05:24:44.612 --T-> fir: 1 fin: 1 seq: 0
05:24:44.612 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 24 dest: 1024 src: 1
05:24:44.612 --P-> 05 64 18 C4 00 04 01 00 5B 61
05:24:44.612 C0 C5 05 0C 01 17 01 09 81 2D 6C 07 00 00 D0 07 E5 1E
05:24:44.612 00 00 00 FF FF
05:24:44.612 <-P-- 05 64 1A 44 01 00 00 04 A6 F0
05:24:44.612 C4 C5 81 90 00 0C 01 17 01 09 81 2D 6C 07 00 00 6B 0B
05:24:44.612 D0 07 00 00 00 C9 D2
05:24:44.612 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 26 dest: 1 src: 1024
05:24:44.612 <-T-- fir: 1 fin: 1 seq: 4
05:24:44.613 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x05 IIN(DeviceRestart, NeedTime)
05:24:44.613 g12v1, 1-Byte Count and Index, count: 1
05:24:44.613 [9] - code: 0x81 (PULSE_ON, TRIP) count: 45 onTime: 1900 offTime: 2000 status: 0 (SUCCESS)
05:24:44.613 step: 18
05:24:44.613 - Check that binary control point 9 operate
05:24:44.613 [PLG] Binary output 9 did operate
05:24:44.613 Passed procedure: 8.2.5.2.2