| 12:00:32.199 | Running procedure: 8.14.2.14 | |
| 12:00:32.203 | This procedure is enabled because the following options: | |
| 12:00:32.203 | - supports.binaryInputChangeEvents == true | |
| 12:00:32.203 | - timesync.binaryInputChangeWithRelativeTime == true | |
| 12:00:32.204 | step: 1 | |
| 12:00:32.204 | - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 | |
| 12:00:32.204 | - g2v0, All Objects | |
| 12:00:32.205 | --A-> | Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 |
| 12:00:32.205 | g2v0, All Objects | |
| 12:00:32.205 | --T-> | fir: 1 fin: 1 seq: 0 |
| 12:00:32.205 | --L-> | master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1 |
| 12:00:32.205 | --P-> | 05 64 0B C4 00 04 01 00 CA 8A |
| 12:00:32.205 | C0 C1 01 02 00 06 95 76 | |
| 12:00:32.206 | steps: 2 to 3 | |
| 12:00:32.206 | - Read a single fragment response w/ sequence(0x01) | |
| 12:00:32.206 | - If the response is not Null, verify that the device requests an application layer confirmation. | |
| 12:00:32.207 | <-P-- | 05 64 0A 44 01 00 00 04 67 88 |
| 12:00:32.207 | C0 C1 81 90 00 73 EE | |
| 12:00:32.207 | <-L-- | master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024 |
| 12:00:32.207 | <-T-- | fir: 1 fin: 1 seq: 0 |
| 12:00:32.207 | <-A-- | Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime) |
| 12:00:32.208 | step: 4 | |
| 12:00:32.208 | - Generate several Binary Input Change Events | |
| 12:00:32.208 | Updated BI 41: value=true, flags=81, timestamp=DNPTime(1586534432208) | |
| 12:00:32.209 | Updated BI 0: value=true, flags=81, timestamp=DNPTime(1586534432208) | |
| 12:00:32.209 | Updated BI 0: value=false, flags=1, timestamp=DNPTime(1586534432209) | |
| 12:00:32.210 | step: 5 | |
| 12:00:32.210 | - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02 | |
| 12:00:32.210 | - g2v3, 2-Byte Count, count: 1 | |
| 12:00:32.210 | --A-> | Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02 |
| 12:00:32.210 | g2v3, 2-Byte Count, count: 1 | |
| 12:00:32.211 | --T-> | fir: 1 fin: 1 seq: 0 |
| 12:00:32.211 | --L-> | master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 13 dest: 1024 src: 1 |
| 12:00:32.211 | --P-> | 05 64 0D C4 00 04 01 00 13 E1 |
| 12:00:32.211 | C0 C2 01 02 03 08 01 00 1E 64 | |
| 12:00:32.214 | steps: 6 to 11 | |
| 12:00:32.214 | - Read a single fragment response w/ sequence(0x02) | |
| 12:00:32.214 | - Verify the device responds with the first Binary Input event | |
| 12:00:32.214 | - If the variation contains timestamps, verify that they are reasonable according to the resolution specified in the Device Profile | |
| 12:00:32.214 | - Verify that an application layer confirmation is requested. | |
| 12:00:32.214 | - Validate that a g51v1 or g51v2 precedes the g2v3 in each fragment of the response | |
| 12:00:32.214 | - Validation that only g51v1, g51v2 and g2v3 appears in the response | |
| 12:00:32.214 | - Verify that flag behavior complies with Section 2, Note #5. | |
| 12:00:32.215 | <-P-- | 05 64 1E 44 01 00 00 04 C8 BD |
| 12:00:32.215 | C1 E2 81 92 00 33 02 07 01 D0 3D D2 64 71 01 02 BF 4C | |
| 12:00:32.215 | 03 28 01 00 29 00 81 00 00 88 44 | |
| 12:00:32.215 | <-L-- | master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 30 dest: 1 src: 1024 |
| 12:00:32.215 | <-T-- | fir: 1 fin: 1 seq: 1 |
| 12:00:32.216 | <-A-- | Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x02 IIN(DeviceRestart, NeedTime, Class1Events) |
| 12:00:32.216 | g51v2, 1-Byte Count, count: 1 | |
| 12:00:32.216 | time: 1586534432208 | |
| 12:00:32.216 | g2v3, 2-Byte Count and Index, count: 1 | |
| 12:00:32.216 | [41] - flags: 0x81 cto: 0 | |
| 12:00:32.217 | --A-> | Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02 |
| 12:00:32.217 | --T-> | fir: 1 fin: 1 seq: 0 |
| 12:00:32.217 | --L-> | master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1 |
| 12:00:32.218 | --P-> | 05 64 08 C4 00 04 01 00 9A 19 |
| 12:00:32.218 | C0 C2 00 D6 8D | |
| 12:00:32.219 | step: 12 | |
| 12:00:32.219 | - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03 | |
| 12:00:32.219 | - g2v3, 2-Byte Count, count: 2 | |
| 12:00:32.219 | --A-> | Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03 |
| 12:00:32.219 | g2v3, 2-Byte Count, count: 2 | |
| 12:00:32.220 | --T-> | fir: 1 fin: 1 seq: 0 |
| 12:00:32.220 | --L-> | master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 13 dest: 1024 src: 1 |
| 12:00:32.221 | --P-> | 05 64 0D C4 00 04 01 00 13 E1 |
| 12:00:32.221 | C0 C3 01 02 03 08 02 00 D7 8B | |
| 12:00:32.223 | steps: 13 to 14 | |
| 12:00:32.223 | - Read a single fragment response w/ sequence(0x03) | |
| 12:00:32.223 | - Verify the device responds with the rest of Binary Input events | |
| 12:00:32.223 | - If the variation contains timestamps, verify that they are reasonable according to the resolution specified in the Device Profile | |
| 12:00:32.223 | - Verify that an application layer confirmation is requested. | |
| 12:00:32.223 | - Validate that a g51v1 or g51v2 precedes the g2v3 in each fragment of the response | |
| 12:00:32.223 | - Validation that only g51v1, g51v2 and g2v3 appears in the response | |
| 12:00:32.223 | - Verify that flag behavior complies with Section 2, Note #5. | |
| 12:00:32.224 | <-P-- | 05 64 23 44 01 00 00 04 DE 56 |
| 12:00:32.224 | C2 E3 81 90 00 33 02 07 01 D0 3D D2 64 71 01 02 45 4A | |
| 12:00:32.224 | 03 28 02 00 00 00 81 00 00 00 00 01 01 00 F6 01 | |
| 12:00:32.224 | <-L-- | master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 35 dest: 1 src: 1024 |
| 12:00:32.224 | <-T-- | fir: 1 fin: 1 seq: 2 |
| 12:00:32.226 | <-A-- | Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x03 IIN(DeviceRestart, NeedTime) |
| 12:00:32.226 | g51v2, 1-Byte Count, count: 1 | |
| 12:00:32.226 | time: 1586534432208 | |
| 12:00:32.226 | g2v3, 2-Byte Count and Index, count: 2 | |
| 12:00:32.226 | [0] - flags: 0x81 cto: 0 | |
| 12:00:32.226 | [0] - flags: 0x01 cto: 1 | |
| 12:00:32.226 | --A-> | Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03 |
| 12:00:32.226 | --T-> | fir: 1 fin: 1 seq: 0 |
| 12:00:32.227 | --L-> | master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1 |
| 12:00:32.227 | --P-> | 05 64 08 C4 00 04 01 00 9A 19 |
| 12:00:32.227 | C0 C3 00 98 26 | |
| 12:00:32.228 | step: 15 | |
| 12:00:32.228 | - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04 | |
| 12:00:32.228 | - g2v0, All Objects | |
| 12:00:32.229 | --A-> | Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04 |
| 12:00:32.229 | g2v0, All Objects | |
| 12:00:32.229 | --T-> | fir: 1 fin: 1 seq: 0 |
| 12:00:32.229 | --L-> | master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1 |
| 12:00:32.230 | --P-> | 05 64 0B C4 00 04 01 00 CA 8A |
| 12:00:32.230 | C0 C4 01 02 00 06 8B D9 | |
| 12:00:32.231 | step: 16 | |
| 12:00:32.231 | - Read a single fragment response w/ sequence(0x04) | |
| 12:00:32.231 | - Verify that the response is empty | |
| 12:00:32.231 | <-P-- | 05 64 0A 44 01 00 00 04 67 88 |
| 12:00:32.231 | C3 C4 81 90 00 BA 95 | |
| 12:00:32.232 | <-L-- | master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024 |
| 12:00:32.232 | <-T-- | fir: 1 fin: 1 seq: 3 |
| 12:00:32.232 | <-A-- | Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04 IIN(DeviceRestart, NeedTime) |
| 12:00:32.232 | Passed procedure: 8.14.2.14 |