Equipment-and-Tool-Institute / j1939-84

J1939-84 implementation for etools.org
MIT License
7 stars 6 forks source link

When checking for erased information, tool interprets NACKs as deleted data #1087

Closed naroner closed 4 months ago

naroner commented 2 years ago

One of our OBD controllers only support DM5 and will NACK others when requested. During the check for erased diagnostic information our controller NACKs the requests, however the tool interprets this as deleting data.

6.9.3.10.d - Checking for erased diagnostic information

15:26:25.1048 Destination Specific DM6 Request to Engine #1 (0) 15:26:25.1054 18EA00F9 [3] CF FE 00 (TX) 15:26:25.1111 18E8FF00 [8] 01 FF FF FF F9 CF FE 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 65231

15:26:25.1123 Destination Specific DM12 Request to Engine #1 (0) 15:26:25.1143 18EA00F9 [3] D4 FE 00 (TX) 15:26:25.1208 18E8FF00 [8] 01 FF FF FF F9 D4 FE 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 65236

15:26:25.1212 Destination Specific DM23 Request to Engine #1 (0) 15:26:25.1234 18EA00F9 [3] B5 FD 00 (TX) 15:26:25.1307 18E8FF00 [8] 01 FF FF FF F9 B5 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64949

15:26:25.1311 Destination Specific DM29 Request to Engine #1 (0) 15:26:25.1326 18EA00F9 [3] 00 9E 00 (TX) 15:26:25.1407 18E8FF00 [8] 01 FF FF FF F9 00 9E 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 40448

15:26:25.1411 Destination Specific DM5 Request to Engine #1 (0) 15:26:25.1424 18EA00F9 [3] CE FE 00 (TX) 15:26:25.1507 18FECE00 [8] 00 00 14 04 00 00 00 00 DM5 from Engine #1 (0): OBD Compliance: HD OBD (20), Active Codes: 0, Previously Active Codes: 0

15:26:25.1523 Destination Specific DM25 Request to Engine #1 (0) 15:26:25.1529 18EA00F9 [3] B7 FD 00 (TX) 15:26:25.1607 18E8FF00 [8] 01 FF FF FF F9 B7 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64951

15:26:25.1616 Destination Specific DM31 Request to Engine #1 (0) 15:26:25.1633 18EA00F9 [3] 00 A3 00 (TX) 15:26:25.1707 18E8FF00 [8] 01 FF FF FF F9 00 A3 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 41728

15:26:25.1709 Destination Specific DM21 Request to Engine #1 (0) 15:26:25.1728 18EA00F9 [3] 00 C1 00 (TX) 15:26:25.1807 18E8FF00 [8] 01 FF FF FF F9 00 C1 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 49408

15:26:25.1817 Destination Specific DM26 Request to Engine #1 (0) 15:26:25.1829 18EA00F9 [3] B8 FD 00 (TX) 15:26:25.1904 18E8FF00 [8] 01 FF FF FF F9 B8 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64952 FAIL: 6.9.3.10.d - Engine #1 (0) erased Test Results data

ericthomasswenson commented 2 years ago

Sorting this out will require a complete test report

ericthomasswenson commented 2 years ago

Having reviewed the same data for #1088. I think that the NACKs are not likely be responsible for the false failure detection. Indeed, #1091 appears to be the more likely explanation, by distorting the test results memory content assumption.

naroner commented 2 years ago

Having reviewed the same data for #1088. I think that the NACKs are not likely be responsible for the false failure detection. Indeed, #1091 appears to be the more likely explanation, by distorting the test results memory content assumption.

1091 doesn't quite make sense, we don't support any test results with SA 0.

ericthomasswenson commented 2 years ago

NR to confirm pass fail after https://github.com/Equipment-and-Tool-Institute/j1939-84/issues/1091 is fixed.

naroner commented 2 years ago

This is still an issue even after #1091 is fixed:

6.4.13.2.a - Checking for erased diagnostic information 11:56:17.2865 Destination Specific DM6 Request to Engine #1 (0) 11:56:17.2885 18EA00F9 [3] CF FE 00 (TX) 11:56:17.2930 18E8FF00 [8] 01 FF FF FF F9 CF FE 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 65231 11:56:17.2955 Destination Specific DM12 Request to Engine #1 (0) 11:56:17.2980 18EA00F9 [3] D4 FE 00 (TX) 11:56:17.3030 18E8FF00 [8] 01 FF FF FF F9 D4 FE 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 65236 11:56:17.3045 Destination Specific DM23 Request to Engine #1 (0) 11:56:17.3080 18EA00F9 [3] B5 FD 00 (TX) 11:56:17.3135 18E8FF00 [8] 01 FF FF FF F9 B5 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64949 11:56:17.3145 Destination Specific DM29 Request to Engine #1 (0) 11:56:17.3170 18EA00F9 [3] 00 9E 00 (TX) 11:56:17.3225 18E8FF00 [8] 01 FF FF FF F9 00 9E 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 40448 11:56:17.3245 Destination Specific DM5 Request to Engine #1 (0) 11:56:17.3270 18EA00F9 [3] CE FE 00 (TX) 11:56:17.3330 18FECE00 [8] 00 00 14 04 00 00 00 00 DM5 from Engine #1 (0): OBD Compliance: HD OBD (20), Active Codes: 0, Previously Active Codes: 0 Continuously Monitored System Support/Status: Comprehensive component supported, complete Fuel System not supported, complete Misfire not supported, complete Non-continuously Monitored System Support/Status: A/C system refrigerant not supported, complete Boost pressure control sys not supported, complete Catalyst not supported, complete Cold start aid system not supported, complete Diesel Particulate Filter not supported, complete EGR/VVT system not supported, complete Evaporative system not supported, complete Exhaust Gas Sensor not supported, complete Exhaust Gas Sensor heater not supported, complete Heated catalyst not supported, complete NMHC converting catalyst not supported, complete NOx catalyst/adsorber not supported, complete Secondary air system not supported, complete 11:56:17.3385 Destination Specific DM25 Request to Engine #1 (0) 11:56:17.3410 18EA00F9 [3] B7 FD 00 (TX) 11:56:17.3435 18E8FF00 [8] 01 FF FF FF F9 B7 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64951 11:56:17.3445 Destination Specific DM31 Request to Engine #1 (0) 11:56:17.3480 18EA00F9 [3] 00 A3 00 (TX) 11:56:17.3530 18E8FF00 [8] 01 FF FF FF F9 00 A3 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 41728 11:56:17.3555 Destination Specific DM21 Request to Engine #1 (0) 11:56:17.3590 18EA00F9 [3] 00 C1 00 (TX) 11:56:17.3635 18E8FF00 [8] 01 FF FF FF F9 00 C1 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 49408 11:56:17.3655 Destination Specific DM26 Request to Engine #1 (0) 11:56:17.3690 18EA00F9 [3] B8 FD 00 (TX) 11:56:17.3735 18E8FF00 [8] 01 FF FF FF F9 B8 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64952 FAIL: 6.4.13.2.a - Engine #1 (0) erased Test Results data

ericthomasswenson commented 2 years ago

1091 was reported as fixed.

Confirmed to be fixed in 3.1.0:

11:47:24.9010 Sending DM7 for DM30 to Engine https://github.com/Equipment-and-Tool-Institute/j1939-84/pull/2 (1) for SPN 521031 11:47:24.9050 18E301F9 [8] F7 47 F3 FF FF FF FF FF (TX) 11:47:25.0000 1CA4F901 [24] F7 47 F3 F0 89 01 00 FB FF FF FF FF F7 47 F3 F2 89 01 00 FB FF FF FF FF DM30 from 1: [ SPN 521031 FMI 16 (SLOT 393) Result: Test Not Complete. SPN 521031 FMI 18 (SLOT 393) Result: Test Not Complete. ]

ericthomasswenson commented 2 years ago

With the correction of #1091, these outcomes were isolated from the the assumption that unexpected test results may explain them.

The strategy to check the ECUs of a distributed system individually is logically correct.

The configuration of SA 0 is somewhat unusual and may be contributing to the outcome. It’s NACKs are consistent with Part 1 performance.

battjt commented 1 year ago

This has been rewritten since the last test. The only occurance of 6.4.13.2.a in the code is a different error:

                      addFailure("6.4.13.2.a - " + moduleName
                             + " did not NACK with control byte 1 or 2 or 3");

Please retest with 3.1.11 (after A.5 update).

battjt commented 1 year ago

@naroner Has this been fixed in 3.1.13?

ericthomasswenson commented 1 year ago

@naroner Nathan … the clock will expire Friday

naroner commented 1 year ago

@battjt @ericthomasswenson It has not been fixed in 3.1.13:

6.4.13.2.c - Checking for erased diagnostic information 16:23:02.6977 Destination Specific DM6 Request to Engine #1 (0) 16:23:02.6986 18EA00F9 [3] CF FE 00 (TX) 16:23:02.7084 18E8FF00 [8] 01 FF FF FF F9 CF FE 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 65231 16:23:02.7094 Destination Specific DM12 Request to Engine #1 (0) 16:23:02.7116 18EA00F9 [3] D4 FE 00 (TX) 16:23:02.7196 18E8FF00 [8] 01 FF FF FF F9 D4 FE 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 65236 16:23:02.7208 Destination Specific DM23 Request to Engine #1 (0) 16:23:02.7247 18EA00F9 [3] B5 FD 00 (TX) 16:23:02.7290 18E8FF00 [8] 01 FF FF FF F9 B5 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64949 16:23:02.7305 Destination Specific DM29 Request to Engine #1 (0) 16:23:02.7343 18EA00F9 [3] 00 9E 00 (TX) 16:23:02.7384 18E8FF00 [8] 01 FF FF FF F9 00 9E 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 40448 16:23:02.7405 Destination Specific DM5 Request to Engine #1 (0) 16:23:02.7434 18EA00F9 [3] CE FE 00 (TX) 16:23:02.7482 18FECE00 [8] 00 00 14 04 00 00 00 00 DM5 from Engine #1 (0): OBD Compliance: HD OBD (20), Active Codes: 0, Previously Active Codes: 0 Continuously Monitored System Support/Status: Comprehensive component supported, complete Fuel System not supported, complete Misfire not supported, complete Non-continuously Monitored System Support/Status: A/C system refrigerant not supported, complete Boost pressure control sys not supported, complete Catalyst not supported, complete Cold start aid system not supported, complete Diesel Particulate Filter not supported, complete EGR/VVT system not supported, complete Evaporative system not supported, complete Exhaust Gas Sensor not supported, complete Exhaust Gas Sensor heater not supported, complete Heated catalyst not supported, complete NMHC converting catalyst not supported, complete NOx catalyst/adsorber not supported, complete Secondary air system not supported, complete 16:23:02.7517 Destination Specific DM25 Request to Engine #1 (0) 16:23:02.7538 18EA00F9 [3] B7 FD 00 (TX) 16:23:02.7581 18E8FF00 [8] 01 FF FF FF F9 B7 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64951 16:23:02.7596 Destination Specific DM31 Request to Engine #1 (0) 16:23:02.7616 18EA00F9 [3] 00 A3 00 (TX) 16:23:02.7690 18E8FF00 [8] 01 FF FF FF F9 00 A3 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 41728 16:23:02.7708 Destination Specific DM21 Request to Engine #1 (0) 16:23:02.7737 18EA00F9 [3] 00 C1 00 (TX) 16:23:02.7784 18E8FF00 [8] 01 FF FF FF F9 00 C1 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 49408 16:23:02.7804 Destination Specific DM26 Request to Engine #1 (0) 16:23:02.7831 18EA00F9 [3] B8 FD 00 (TX) 16:23:02.7881 18E8FF00 [8] 01 FF FF FF F9 B8 FD 00 Acknowledgment from Engine #1 (0): Response: NACK, Group Function: 255, Address Acknowledged: 249, PGN Requested: 64952 FAIL: 6.4.13.2.c - Engine #1 (0) erased Test Results data

battjt commented 1 year ago

The bug had nothing to do with NACKs. There are no scaled test results, so no queries were made, so all collected values (which was none) were initialized, which the tool interpreted as all erased.

If there are no test results to verify, then no verification of erased or not erased can be made, so no failure will be recorded.

ericthomasswenson commented 1 year ago

So this is an empty set vestigial case.

naroner commented 1 year ago

@ericthomasswenson This is fixed in 3.1.19