C2 14230

As ISO 14230 allows (see general 14230 info page), Nissan :
 * Implements only a subset of the standard SID requests
 * Adds mfg-specific extensions to standard SIDs
 * Adds mfg-defined SIDs

TODO: document availability, common features and differences between K line command set and CAN-only UDS / iso14229 protocol

SIDs with generally standard behavior

 * $11 - Reset ECU
 * $12 - Read Freeze Frame Data
 * $14 - Clear DTC Information
 * $1A - Read ECU ID
 * $20 - Stop Diagnostic Session
 * $21 - Read Data by Local Identifier
 * $22 - Read Data by Common Identifier (Data Identifiers (DID) Range From 0 - 65535)
 * $27 - Security Access
 * $31 - Start Routine by Local ID
 * $32 - Stop Routing by Local ID
 * $33 - Request Routine Results by Local ID
 * $34 - Request Download
 * $36 - Transfer Data
 * $37 - Request Transfer Exit
 * $3B - Write Data by Local Identifier
 * $3E - Tester is Present
 * $AC - Request Simply Dynamically Defined Local ID, Clear DDL ID

11
Clears all ECU self learns.
 * $11 80 ECUReset

1A

 * $1A 80
 * $1A 81 get ECUID
 * $1A 82
 * $1A 83

27
TODO : investigate alternate algorithm, that uses "27 8x" or "27 03" requests.
 * $27 01 RequestSeed : ECU returns 32bit seed
 * $27 02 SendKey : host sends back key calculated with algorithm 01

34

 * $34 80 RequestDownload : prepare stuff
 * $34 81 Only available inside BL kernels ? Or just some ECUIDs ?
 * $34 82 Only available inside BL kernels ? Or just some ECUIDs ?
 * $34 83 ?

36

 * $36 BLOCKNO_H BLOCKNO_L 20 ... TransferData

37

 * $37 CKS_H CKS_L RequestTransferExit. Returns "7F 37 91" if the checksum is bad

A0
????

A3
???? related to DTCs

AC LoadItems
mem addresses or possibly LID / CID values

BF RAMjump !!!

 * BF 00 RAMjumpcheck
 * BF 01 RAMjump