11:56:42.309
|
|
Running procedure: 8.11.2.1
|
11:56:42.316
|
|
This procedure is enabled because the following options:
|
11:56:42.316
|
|
- supports.unsolicitedResponse == true
|
11:56:42.316
|
|
step: 1
|
11:56:42.316
|
|
- Verify that the DUT has off-line capability to configure the unsolicited response mode
|
11:56:42.316
|
|
- Configure the unsolicited response mode to 'true'
|
11:56:42.323
|
|
step: 2
|
11:56:42.323
|
|
- Verify the DUT has off-line capability to configure the unsolicited confirmation timeout
|
11:56:42.324
|
|
step: 3
|
11:56:42.324
|
|
- Set the unsolicited confirmation timeout to 5000 milliseconds (to follow the test spec, prefer 5 seconds in the configuration)
|
11:56:42.329
|
|
step: 4
|
11:56:42.329
|
|
- Verify the DUT has off-line capability to configure the destination address of the Master device to which unsolicited responses are sent
|
11:56:42.329
|
|
- Configure the DUT to transmit unsolicited responses to master address 2
|
11:56:42.334
|
|
step: 5
|
11:56:42.334
|
|
- Cycle power to the DUT
|
11:56:42.339
|
|
step: 6
|
11:56:42.339
|
|
- Read an unsolicited response
|
11:56:42.339
|
|
- Verify that the response is empty
|
11:56:42.341
|
<-P--
|
05 64 0A 44 02 00 00 04 26 82
|
11:56:42.341
|
|
C0 F0 82 90 00 43 A2
|
11:56:42.341
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 2 src: 1024
|
11:56:42.341
|
<-T--
|
fir: 1 fin: 1 seq: 0
|
11:56:42.342
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x00 IIN(DeviceRestart, NeedTime)
|
11:56:42.342
|
|
step: 7
|
11:56:42.342
|
|
- Configure the DUT to transmit unsolicited responses to master address 1
|
11:56:42.347
|
|
step: 8
|
11:56:42.347
|
|
- Cycle power to the DUT
|
11:56:42.352
|
|
steps: 9 to 14
|
11:56:42.352
|
|
- Read an unsolicited response
|
11:56:42.352
|
|
- Verify that the IIN field contains IIN(DeviceRestart)
|
11:56:42.352
|
|
- Verify that the response is empty
|
11:56:42.354
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:56:42.354
|
|
C0 F0 82 90 00 43 A2
|
11:56:42.355
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:56:42.355
|
<-T--
|
fir: 1 fin: 1 seq: 0
|
11:56:42.355
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x00 IIN(DeviceRestart, NeedTime)
|
11:56:42.357
|
|
steps: 15 to 18
|
11:56:42.357
|
|
- Read an unsolicited response
|
11:56:42.357
|
|
- Verify that the IIN field contains IIN(DeviceRestart)
|
11:56:42.357
|
|
- Verify that the response is empty
|
11:56:42.357
|
|
- Read an unsolicited response
|
11:56:42.357
|
|
- Verify that the IIN field contains IIN(DeviceRestart)
|
11:56:42.357
|
|
- Verify that the response is empty
|
11:56:47.356
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:56:47.356
|
|
C1 F1 82 90 00 AD 43
|
11:56:47.356
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:56:47.357
|
<-T--
|
fir: 1 fin: 1 seq: 1
|
11:56:47.357
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x01 IIN(DeviceRestart, NeedTime)
|
11:56:52.356
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:56:52.356
|
|
C2 F2 82 90 00 E6 2C
|
11:56:52.356
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:56:52.356
|
<-T--
|
fir: 1 fin: 1 seq: 2
|
11:56:52.357
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x02 IIN(DeviceRestart, NeedTime)
|
11:56:52.358
|
|
step: 19
|
11:56:52.358
|
|
- Write(0x02) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00
|
11:56:52.358
|
|
- g80v1, 1-Byte Start/Stop, start: 7 stop: 7
|
11:56:52.358
|
|
- [7] - BooleanValue(false)
|
11:56:52.358
|
--A->
|
Write(0x02) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00
|
11:56:52.358
|
|
g80v1, 1-Byte Start/Stop, start: 7 stop: 7
|
11:56:52.358
|
|
[7] - BooleanValue(false)
|
11:56:52.359
|
--T->
|
fir: 1 fin: 1 seq: 0
|
11:56:52.359
|
--L->
|
master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 14 dest: 1024 src: 1
|
11:56:52.360
|
--P->
|
05 64 0E C4 00 04 01 00 43 72
|
11:56:52.360
|
|
C0 C0 02 50 01 00 07 07 00 2C 49
|
11:56:52.361
|
|
step: 20
|
11:56:52.361
|
|
- Read a single fragment response w/ sequence(0x00)
|
11:56:52.361
|
|
- Verify that the response is empty
|
11:56:52.361
|
|
- Verify that the IIN field does not contain bits IIN(DeviceRestart)
|
11:56:52.361
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:56:52.361
|
|
C3 C0 81 10 00 BE 52
|
11:56:52.362
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:56:52.362
|
<-T--
|
fir: 1 fin: 1 seq: 3
|
11:56:52.362
|
<-A--
|
Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00 IIN(NeedTime)
|
11:56:52.363
|
|
steps: 21 to 22
|
11:56:52.363
|
|
- Read an unsolicited response
|
11:56:52.363
|
|
- Verify that the response is empty
|
11:56:52.363
|
|
- Verify that the IIN field does not contain bits IIN(DeviceRestart)
|
11:56:57.357
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:56:57.357
|
|
C4 F3 82 10 00 35 3F
|
11:56:57.357
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:56:57.357
|
<-T--
|
fir: 1 fin: 1 seq: 4
|
11:56:57.358
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x03 IIN(NeedTime)
|
11:56:57.359
|
|
step: 23
|
11:56:57.359
|
|
- Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
|
11:56:57.359
|
|
- g60v1, All Objects
|
11:56:57.359
|
--A->
|
Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
|
11:56:57.359
|
|
g60v1, All Objects
|
11:56:57.359
|
--T->
|
fir: 1 fin: 1 seq: 0
|
11:56:57.360
|
--L->
|
master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
|
11:56:57.360
|
--P->
|
05 64 0B C4 00 04 01 00 CA 8A
|
11:56:57.360
|
|
C0 C1 01 3C 01 06 F9 73
|
11:56:57.361
|
|
step: 24
|
11:56:57.361
|
|
- Read any number of valid responses beginning w/ sequence(0x01) and incrementing by 1 modulo 16
|
11:56:57.366
|
<-P--
|
05 64 FC 44 01 00 00 04 03 D5
|
11:56:57.366
|
|
C5 C1 81 10 00 01 02 01 00 00 00 00 01 01 02 01 F0 1F
|
11:56:57.366
|
|
29 00 29 00 01 01 02 01 00 04 00 04 01 01 02 01 2A 19
|
11:56:57.366
|
|
FF FF FF FF 01 1E 02 01 00 00 00 00 01 00 00 1E 69 7E
|
11:56:57.366
|
|
02 01 29 00 29 00 01 00 00 1E 02 01 00 04 00 04 42 79
|
11:56:57.366
|
|
01 00 00 1E 02 01 FF FF FF FF 01 00 00 14 02 01 C6 DB
|
11:56:57.366
|
|
00 00 00 00 01 01 00 14 02 01 29 00 29 00 01 01 C8 85
|
11:56:57.366
|
|
00 14 02 01 00 04 00 04 01 01 00 14 02 01 FF FF 4B 05
|
11:56:57.366
|
|
FF FF 01 01 00 15 02 01 00 00 00 00 01 01 00 15 AE 4A
|
11:56:57.366
|
|
02 01 29 00 29 00 01 01 00 15 02 01 00 04 00 04 C7 27
|
11:56:57.366
|
|
01 01 00 15 02 01 FF FF FF FF 01 01 00 0A 02 00 48 6C
|
11:56:57.366
|
|
00 13 01 01 01 01 01 01 01 01 01 01 01 01 01 01 E8 51
|
11:56:57.366
|
|
01 01 01 01 01 01 28 02 00 00 13 01 00 00 01 00 E3 1F
|
11:56:57.366
|
|
00 01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 9E 0F
|
11:56:57.366
|
|
01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 01 FE 85
|
11:56:57.366
|
|
00 00 01 00 00 01 00 00 01 00 00 01 00 00 01 00 DB 49
|
11:56:57.366
|
|
00 01 00 00 01 00 00 A0 53
|
11:56:57.366
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 252 dest: 1 src: 1024
|
11:56:57.366
|
<-T--
|
fir: 1 fin: 1 seq: 5
|
11:56:57.384
|
<-A--
|
Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(NeedTime)
|
11:56:57.384
|
|
g1v2, 2-Byte Start/Stop, start: 0 stop: 0
|
11:56:57.384
|
|
[0] - flags: 0x01
|
11:56:57.384
|
|
g1v2, 2-Byte Start/Stop, start: 41 stop: 41
|
11:56:57.384
|
|
[41] - flags: 0x01
|
11:56:57.384
|
|
g1v2, 2-Byte Start/Stop, start: 1024 stop: 1024
|
11:56:57.384
|
|
[1024] - flags: 0x01
|
11:56:57.384
|
|
g1v2, 2-Byte Start/Stop, start: 65535 stop: 65535
|
11:56:57.384
|
|
[65535] - flags: 0x01
|
11:56:57.384
|
|
g30v2, 2-Byte Start/Stop, start: 0 stop: 0
|
11:56:57.384
|
|
[0] - flags: 0x01 value: 0
|
11:56:57.384
|
|
g30v2, 2-Byte Start/Stop, start: 41 stop: 41
|
11:56:57.384
|
|
[41] - flags: 0x01 value: 0
|
11:56:57.384
|
|
g30v2, 2-Byte Start/Stop, start: 1024 stop: 1024
|
11:56:57.384
|
|
[1024] - flags: 0x01 value: 0
|
11:56:57.384
|
|
g30v2, 2-Byte Start/Stop, start: 65535 stop: 65535
|
11:56:57.384
|
|
[65535] - flags: 0x01 value: 0
|
11:56:57.384
|
|
g20v2, 2-Byte Start/Stop, start: 0 stop: 0
|
11:56:57.384
|
|
[0] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g20v2, 2-Byte Start/Stop, start: 41 stop: 41
|
11:56:57.384
|
|
[41] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g20v2, 2-Byte Start/Stop, start: 1024 stop: 1024
|
11:56:57.384
|
|
[1024] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g20v2, 2-Byte Start/Stop, start: 65535 stop: 65535
|
11:56:57.384
|
|
[65535] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g21v2, 2-Byte Start/Stop, start: 0 stop: 0
|
11:56:57.384
|
|
[0] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g21v2, 2-Byte Start/Stop, start: 41 stop: 41
|
11:56:57.384
|
|
[41] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g21v2, 2-Byte Start/Stop, start: 1024 stop: 1024
|
11:56:57.384
|
|
[1024] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g21v2, 2-Byte Start/Stop, start: 65535 stop: 65535
|
11:56:57.384
|
|
[65535] - flags: 0x01 count: 1
|
11:56:57.384
|
|
g10v2, 1-Byte Start/Stop, start: 0 stop: 19
|
11:56:57.384
|
|
[0] - flags: 0x01
|
11:56:57.384
|
|
[1] - flags: 0x01
|
11:56:57.384
|
|
[2] - flags: 0x01
|
11:56:57.384
|
|
[3] - flags: 0x01
|
11:56:57.384
|
|
[4] - flags: 0x01
|
11:56:57.384
|
|
[5] - flags: 0x01
|
11:56:57.384
|
|
[6] - flags: 0x01
|
11:56:57.384
|
|
[7] - flags: 0x01
|
11:56:57.384
|
|
[8] - flags: 0x01
|
11:56:57.384
|
|
[9] - flags: 0x01
|
11:56:57.384
|
|
[10] - flags: 0x01
|
11:56:57.384
|
|
[11] - flags: 0x01
|
11:56:57.384
|
|
[12] - flags: 0x01
|
11:56:57.384
|
|
[13] - flags: 0x01
|
11:56:57.384
|
|
[14] - flags: 0x01
|
11:56:57.384
|
|
[15] - flags: 0x01
|
11:56:57.384
|
|
[16] - flags: 0x01
|
11:56:57.384
|
|
[17] - flags: 0x01
|
11:56:57.384
|
|
[18] - flags: 0x01
|
11:56:57.384
|
|
[19] - flags: 0x01
|
11:56:57.384
|
|
g40v2, 1-Byte Start/Stop, start: 0 stop: 19
|
11:56:57.384
|
|
[0] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[1] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[2] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[3] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[4] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[5] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[6] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[7] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[8] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[9] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[10] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[11] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[12] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[13] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[14] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[15] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[16] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[17] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[18] - flags: 0x01 value: 0
|
11:56:57.384
|
|
[19] - flags: 0x01 value: 0
|
11:56:57.385
|
|
steps: 25 to 26
|
11:56:57.385
|
|
- Read an unsolicited response
|
11:56:57.385
|
|
- Verify that the response is empty
|
11:56:57.386
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:56:57.386
|
|
C6 F4 82 10 00 53 AF
|
11:56:57.386
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:56:57.386
|
<-T--
|
fir: 1 fin: 1 seq: 6
|
11:56:57.387
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x04 IIN(NeedTime)
|
11:56:57.387
|
--A->
|
Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 1 seq: 0x05
|
11:56:57.387
|
--T->
|
fir: 1 fin: 1 seq: 0
|
11:56:57.387
|
--L->
|
master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
|
11:56:57.388
|
--P->
|
05 64 08 C4 00 04 01 00 9A 19
|
11:56:57.388
|
|
C0 D5 00 9F D5
|
11:56:57.389
|
|
steps: 27 to 28
|
11:56:57.389
|
|
- Read an unsolicited response
|
11:56:57.389
|
|
- Verify that the response is empty
|
11:57:02.362
|
<-P--
|
05 64 0A 44 01 00 00 04 67 88
|
11:57:02.362
|
|
C7 F5 82 10 00 BD 4E
|
11:57:02.362
|
<-L--
|
master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
|
11:57:02.363
|
<-T--
|
fir: 1 fin: 1 seq: 7
|
11:57:02.363
|
<-A--
|
Unsolicited Response(0x82) fir: 1 fin: 1 con: 1 uns: 1 seq: 0x05 IIN(NeedTime)
|
11:57:02.363
|
--A->
|
Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 1 seq: 0x05
|
11:57:02.363
|
--T->
|
fir: 1 fin: 1 seq: 0
|
11:57:02.364
|
--L->
|
master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
|
11:57:02.364
|
--P->
|
05 64 08 C4 00 04 01 00 9A 19
|
11:57:02.364
|
|
C0 D5 00 9F D5
|
11:57:02.365
|
|
step: 29
|
11:57:02.365
|
|
- Generate Class 1, 2 or 3 events that would normally trigger an unsolicited response
|
11:57:02.365
|
|
Updated BI 1024: value=true, flags=81, timestamp=DNPTime(1586534222365)
|
11:57:02.366
|
|
step: 30
|
11:57:02.366
|
|
- Expect no unsolicited response.
|
11:57:07.567
|
|
Passed procedure: 8.11.2.1
|