@ -79,35 +79,25 @@ FINGERPRINTS = {
]
}
NISSAN_DIAGNOSTIC_REQUEST_KWP = bytes ( [ uds . SERVICE_TYPE . DIAGNOSTIC_SESSION_CONTROL ] )
NISSAN_DIAGNOSTIC_RESPONSE_KWP = bytes ( [ uds . SERVICE_TYPE . DIAGNOSTIC_SESSION_CONTROL + 0x40 ] )
NISSAN_DIAGNOSTIC_REQUEST_KWP = bytes ( [ uds . SERVICE_TYPE . DIAGNOSTIC_SESSION_CONTROL , 0x81 ] )
NISSAN_DIAGNOSTIC_RESPONSE_KWP = bytes ( [ uds . SERVICE_TYPE . DIAGNOSTIC_SESSION_CONTROL + 0x40 , 0x81 ] )
NISSAN_VERSION_REQUEST_KWP = b ' \x21 \x83 '
NISSAN_VERSION_RESPONSE_KWP = b ' \x61 \x83 '
NISSAN_RX_OFFSET = 0x20
# Try diagnostic sessions: default, standby, extended, Nissan-specific
NISSAN_DIAGNOSTIC_SESSION_TYPES = ( 0x81 , 0x89 , 0x92 , 0xc0 )
NISSAN_DEFAULT_DIAGNOSTIC_SESSION_TYPE = 0xc0
FW_QUERY_CONFIG = FwQueryConfig (
requests = [
* [
Request (
[ NISSAN_DIAGNOSTIC_REQUEST_KWP + bytes ( [ subfunction ] ) , NISSAN_VERSION_REQUEST_KWP ] ,
[ NISSAN_DIAGNOSTIC_RESPONSE_KWP + bytes ( [ subfunction ] ) , NISSAN_VERSION_RESPONSE_KWP ] ,
logging = subfunction != NISSAN_DEFAULT_DIAGNOSTIC_SESSION_TYPE ,
) for subfunction in NISSAN_DIAGNOSTIC_SESSION_TYPES
] ,
* [
[ NISSAN_DIAGNOSTIC_REQUEST_KWP , NISSAN_VERSION_REQUEST_KWP ] ,
[ NISSAN_DIAGNOSTIC_RESPONSE_KWP , NISSAN_VERSION_RESPONSE_KWP ] ,
) ,
Request (
[ NISSAN_DIAGNOSTIC_REQUEST_KWP + bytes ( [ subfunction ] ) , NISSAN_VERSION_REQUEST_KWP ] ,
[ NISSAN_DIAGNOSTIC_RESPONSE_KWP + bytes ( [ subfunction ] ) , NISSAN_VERSION_RESPONSE_KWP ] ,
[ NISSAN_DIAGNOSTIC_REQUEST_KWP , NISSAN_VERSION_REQUEST_KWP ] ,
[ NISSAN_DIAGNOSTIC_RESPONSE_KWP , NISSAN_VERSION_RESPONSE_KWP ] ,
rx_offset = NISSAN_RX_OFFSET ,
logging = subfunction != NISSAN_DEFAULT_DIAGNOSTIC_SESSION_TYPE ,
) for subfunction in NISSAN_DIAGNOSTIC_SESSION_TYPES
] ,
) ,
Request (
[ StdQueries . MANUFACTURER_SOFTWARE_VERSION_REQUEST ] ,
[ StdQueries . MANUFACTURER_SOFTWARE_VERSION_RESPONSE ] ,