File name: CiA447_HBtime_write_V204.esat Full name: CiA447 Heartbeat Write Version: V02.04 of 03-APR-2014 Test ID: 0xF000 (61440d) DUTnodeID: 3 Functions: LSS_Master Smart_ID CiA_447_ID use_pre_sequence use_post_sequence Resources: 2 variables, 2 buffers, 10000us timer resolution Timeout: 15.000s Descript.: Gateway writes to 1017 must pass State 0001h: (START) Start of test, start sequence ALWAYS ON TRANSMIT {0600h,8,40h,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 1) LOG: (IDLE) "Gateway read heartbeat producer time" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0002h Wait for SDO response State 0002h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,4Bh,17h,10h,00h,00h,00h,FFh,FFh} AND MATCH {0FFFh,FFh,F3h,FFh,FFh,FFh,FFh,FFh,FFh,FFh} (Smart CAN ID based on DUT, client 1) LOG: (PASS) "Heartbeat read response" COPY message to Buffer[1] VAR ACTION: FREE VAR[1] GOTO State 0047h Set hb time to zero IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout gateway read 1017h" VAR ACTION: FREE VAR[1] GOTO State FFFFFFFEh (FAIL) State 0047h: Set hb time to zero ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 1) LOG: (IDLE) "Gateway writes heartbeat producer time zero" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0003h Wait for SDO response State 0003h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,60h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,FFh,FFh,FFh,FFh,FFh,FFh,FFh,FFh,FFh} (Smart CAN ID based on DUT, client 1) LOG: (PASS) "Heartbeat write response zero" VAR ACTION: FREE VAR[1] GOTO State 0045h NMT IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout gateway write zero to 1017h" VAR ACTION: FREE VAR[1] GOTO State FFFFFFFEh (FAIL) State 0045h: NMT ALWAYS ON TRANSMIT {0000h,2,01h,00h,00h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT) LOG: (IDLE) "NMT Master: Set node to operational" VAR ACTION: NONE GOTO State 0004h Stage 2: Access to 1017 from non-gateway State 0004h: Stage 2: Access to 1017 from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0005h Wait for SDO response State 0005h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0006h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,FFh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT) LOG: (PASS) "Heartbeat write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0006h Write attempt to 1017h from non-gateway IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout non-gateway write 1017h" VAR ACTION: FREE VAR[1] GOTO State 0006h Write attempt to 1017h from non-gateway State 0006h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 2) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0007h Wait for SDO response State 0007h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 2) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0008h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 2) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0008h Write attempt to 1017h from non-gateway IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout non-gateway write 1017h" VAR ACTION: FREE VAR[1] GOTO State 0008h Write attempt to 1017h from non-gateway State 0008h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 4) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0009h Wait for SDO response State 0009h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 4) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 000Ah Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 4) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 000Ah Write attempt to 1017h from non-gateway IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout non-gateway write 1017h" VAR ACTION: FREE VAR[1] GOTO State 000Ah Write attempt to 1017h from non-gateway State 000Ah: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 5) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 000Bh Wait for SDO response State 000Bh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 5) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 000Ch Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 5) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 000Ch Write attempt to 1017h from non-gateway IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout non-gateway write 1017h" VAR ACTION: FREE VAR[1] GOTO State 000Ch Write attempt to 1017h from non-gateway State 000Ch: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 6) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 000Dh Wait for SDO response State 000Dh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 6) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 000Eh Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 6) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 000Eh Write attempt to 1017h from non-gateway State 000Eh: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 7) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 000Fh Wait for SDO response State 000Fh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 7) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0010h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 7) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0010h Write attempt to 1017h from non-gateway State 0010h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 8) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0011h Wait for SDO response State 0011h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 8) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0012h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 8) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0012h Write attempt to 1017h from non-gateway State 0012h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 9) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0013h Wait for SDO response State 0013h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 9) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0014h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 9) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0014h Write attempt to 1017h from non-gateway State 0014h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 10) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0015h Wait for SDO response State 0015h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 10) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0016h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 10) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0016h Write attempt to 1017h from non-gateway State 0016h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 11) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0017h Wait for SDO response State 0017h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 11) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0018h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 11) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0018h Write attempt to 1017h from non-gateway State 0018h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 12) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0019h Wait for SDO response State 0019h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 12) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 001Ah Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 12) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 001Ah Write attempt to 1017h from non-gateway State 001Ah: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 13) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 001Bh Wait for SDO response State 001Bh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 13) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 001Ch Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 13) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 001Ch Write attempt to 1017h from non-gateway State 001Ch: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 14) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 001Dh Wait for SDO response State 001Dh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 14) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 001Eh Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 14) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 001Eh Write attempt to 1017h from non-gateway State 001Eh: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 15) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 001Fh Wait for SDO response State 001Fh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 15) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0020h Write attempt to 1017h from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 15) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0020h Write attempt to 1017h from non-gateway State 0020h: Write attempt to 1017h from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 16) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0021h Wait for SDO response State 0021h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 16) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0046h Gateway restores heartbeat ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 16) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0046h Gateway restores heartbeat State 0046h: Gateway restores heartbeat ALWAYS ON TRANSMIT {0000h,2,80h,00h,00h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT) LOG: (IDLE) "Set DUT to pre-operational" VAR ACTION: NONE GOTO State 0022h Write attempt from non-gateway State 0022h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0023h Wait for SDO response State 0023h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0024h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0024h Write attempt from non-gateway State 0024h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 2) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0025h Wait for SDO response State 0025h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 2) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0026h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 2) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0026h Write attempt from non-gateway State 0026h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 4) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0027h Wait for SDO response State 0027h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 4) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0028h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 4) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0028h Write attempt from non-gateway State 0028h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 5) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0029h Wait for SDO response State 0029h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 5) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 002Ah Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 5) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 002Ah Write attempt from non-gateway State 002Ah: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 6) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 002Bh Wait for SDO response State 002Bh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 6) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 002Ch Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 6) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 002Ch Write attempt from non-gateway State 002Ch: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 7) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 002Dh Wait for SDO response State 002Dh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 7) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 002Eh Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 7) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 002Eh Write attempt from non-gateway State 002Eh: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 8) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 002Fh Wait for SDO response State 002Fh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 8) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0030h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 8) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0030h Write attempt from non-gateway State 0030h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 9) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0031h Wait for SDO response State 0031h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 9) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0032h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 9) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0032h Write attempt from non-gateway State 0032h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 10) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0033h Wait for SDO response State 0033h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 10) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0034h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 10) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0034h Write attempt from non-gateway State 0034h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 11) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0035h Wait for SDO response State 0035h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 11) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0036h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 11) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0036h Write attempt from non-gateway State 0036h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 12) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0037h Wait for SDO response State 0037h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 12) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0038h Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 12) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0038h Write attempt from non-gateway State 0038h: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 13) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0039h Wait for SDO response State 0039h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 13) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 003Ah Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 13) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 003Ah Write attempt from non-gateway State 003Ah: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 14) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 003Bh Wait for SDO response State 003Bh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 14) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 003Ch Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 14) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 003Ch Write attempt from non-gateway State 003Ch: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 15) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 003Dh Wait for SDO response State 003Dh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 15) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 003Eh Write attempt from non-gateway ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 15) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 003Eh Write attempt from non-gateway State 003Eh: Write attempt from non-gateway ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 16) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 003Fh Wait for SDO response State 003Fh: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,80h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,00h,00h,00h} (Smart CAN ID based on DUT, client 16) LOG: (PASS) "1017h write abort from non-gateway" VAR ACTION: FREE VAR[1] GOTO State 0040h Gateway restores heartbeat ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,80h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT, client 16) LOG: (FAIL) "Wrong SDO response, expected abort" VAR ACTION: FREE VAR[1] GOTO State 0040h Gateway restores heartbeat State 0040h: Gateway restores heartbeat ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT, client 1) LOG: (IDLE) "Gateway restores heartbeat" COPY last 4 bytes from Buffer[1] VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0041h Wait for SDO response State 0041h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,60h,17h,10h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,FFh,FFh,FFh,FFh,FFh,FFh,FFh,FFh} (Smart CAN ID based on DUT, client 1) LOG: (PASS) "1017h write response restore" VAR ACTION: FREE VAR[1] GOTO State 0042h Stop DUT IF (VAR[1] >= 50000) THEN LOG: (FAIL) "SDO timeout gateway write 1017h restore" VAR ACTION: FREE VAR[1] GOTO State FFFFFFFEh (FAIL) State 0042h: Stop DUT ALWAYS ON TRANSMIT {0000h,2,02h,00h,00h,00h,00h,00h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT) LOG: (IDLE) "NMT Master: Set node to stopped" VAR ACTION: NONE GOTO State 0043h Attempt to set heartbeat time State 0043h: Attempt to set heartbeat time ALWAYS ON TRANSMIT {0600h,8,2Bh,17h,10h,00h,00h,01h,00h,00h} WITH DELAY TIME_MS[10.000] (Smart CAN ID based on DUT) LOG: (IDLE) "Write attempt 1017h from non-gateway" VAR ACTION: ALLOC TIMER VAR[1] = 0 GOTO State 0044h Wait for SDO response State 0044h: Wait for SDO response ALWAYS ON RECEIVE {0580h, 8,00h,00h,00h,00h,00h,00h,00h,00h} AND MATCH {0FFFh,Fh,00h,00h,00h,00h,00h,00h,00h,00h} (Smart CAN ID based on DUT) LOG: (FAIL) "No response allowed in stopped mode" VAR ACTION: FREE VAR[1] GOTO State FFFFFFFEh (FAIL) IF (VAR[1] >= 100000) THEN LOG: (PASS) "SDO timeout OK in stopped mode" VAR ACTION: FREE VAR[1] GOTO State FFFFFFFDh (PASS) State FFFFFFEFh: (ANY) Receives handled in EVERY state OK: No rules for state 'ANY'